<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1817040094544215804</id><updated>2012-01-02T15:22:20.333+05:30</updated><category term='provisioning'/><category term='jxta'/><category term='discussion'/><category term='hpd530'/><category term='meetup'/><category term='tools'/><category term='package'/><category term='cse'/><category term='s3'/><category term='gentoo'/><category term='provision'/><category term='community'/><category term='offline'/><category term='gwt'/><category term='maven'/><category term='selenium'/><category term='scaling'/><category term='bios'/><category term='ants'/><category term='cobbler'/><category term='biking'/><category term='picasa'/><category term='mutt'/><category term='gdata'/><category term='uzbl-core'/><category term='performance'/><category term='eclipse'/><category term='aws'/><category term='raid'/><category term='X11'/><category term='smartgwt'/><category term='backup'/><category term='helloworld'/><category term='packagmanagement'/><category term='java'/><category term='indian railway'/><category term='focused'/><category term='contyclub'/><category term='efficient'/><category term='lg evo'/><category term='growth'/><category term='rrs'/><category term='ux'/><category term='cloud'/><category term='philosophy'/><category term='bash'/><category term='beta'/><category term='OpenLinuxBook'/><category term='veloscope'/><category term='vpc'/><category term='android'/><category term='tooth extraction'/><category term='selenium-grid'/><category term='airtel gprs plans'/><category term='reference'/><category term='mac'/><category term='pain'/><category term='design'/><category term='lightweight'/><category term='ubuntu'/><category term='architecture'/><category term='procmail'/><category term='nvidia'/><category term='google'/><category term='ioc'/><category term='packaging'/><category term='ec2'/><category term='gnuyoga'/><category term='fetchmail'/><category term='social'/><category term='fedora'/><category term='leadership'/><category term='bangalore'/><category term='announcement'/><category term='ob'/><category term='wink'/><category term='foto'/><category term='guice'/><category term='amazon'/><category term='browser'/><category term='photoshoot'/><category term='script'/><category term='ci'/><category term='automate'/><category term='parallel'/><category term='windows'/><category term='irctc'/><category term='ebs'/><category term='yumdownload-only'/><category term='linux'/><category term='user experience'/><category term='change management'/><category term='openbravo'/><category term='collaborate'/><category term='guide'/><category term='p2p'/><category term='uzbl'/><category term='howto'/><category term='usergroup'/><category term='gettingstarted'/><category term='experience'/><category term='gtk'/><category term='hudson'/><category term='getting started'/><category term='screensetup'/><category term='new interface'/><category term='null'/><category term='versioning'/><category term='xorg'/><category term='1'/><category term='wisdom'/><category term='docs.google.com'/><category term='unix'/><category term='history'/><category term='search'/><category term='vpn'/><category term='career'/><category term='command line'/><category term='gmail'/><category term='dual monitor'/><category term='clean'/><title type='text'>Agility | Lean Startup | Continuous Improvement | Open Source</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>93</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5822828830268784834</id><published>2011-11-28T08:52:00.001+05:30</published><updated>2011-11-28T09:08:39.798+05:30</updated><title type='text'>Mac OSx [Lion] Write Mount NTFS file system</title><content type='html'>My common hard disk between Mac,Linux and Windows machine is a NTFS external hard disk. Recently i had need to write to NTFS from mac and here are few simple steps you can do to get the same working in a mac.&lt;br /&gt;&lt;br /&gt;Note: instead of macports, i use &lt;a href="https://github.com/mxcl/homebrew"&gt;brew&lt;/a&gt; ( another clean neat package manager, works from command line and its awesome).&lt;br /&gt;&lt;br /&gt;Let's get brew'ing. Once you &lt;a href="https://github.com/mxcl/homebrew/wiki/installation"&gt;brew install&lt;/a&gt; is over install ntfs-3g ( brew install ntfs-3g)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-sgCMYvSW0pg/TtL_9zeO2OI/AAAAAAAAW8E/_1uJbtcIMp4/s1600/Screen+Shot+2011-11-28+at+8.58.02+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://3.bp.blogspot.com/-sgCMYvSW0pg/TtL_9zeO2OI/AAAAAAAAW8E/_1uJbtcIMp4/s400/Screen+Shot+2011-11-28+at+8.58.02+AM.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Once ntfs-3g installed, connect the hard disk and figure out what the mount point.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-a4uV0zy2kng/TtMAe9jIemI/AAAAAAAAW8M/7PDodbxbgDY/s1600/Screen+Shot+2011-11-28+at+9.00.40+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-a4uV0zy2kng/TtMAe9jIemI/AAAAAAAAW8M/7PDodbxbgDY/s1600/Screen+Shot+2011-11-28+at+9.00.40+AM.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;umount /dev/disk1s1&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote class="tr_bq"&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;ntfs-3g -o rw /dev/disk1s1 /mnt/ntfs-rw&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;We are done, partition is mount in /mnt/ntfs-rw &lt;br /&gt;&lt;blockquote class="tr_bq"&gt;&amp;nbsp;&lt;/blockquote&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-m_T2PTnAVqU/TtMBt21nOMI/AAAAAAAAW8U/56_-DiUSeNg/s1600/Screen+Shot+2011-11-28+at+9.05.59+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-m_T2PTnAVqU/TtMBt21nOMI/AAAAAAAAW8U/56_-DiUSeNg/s1600/Screen+Shot+2011-11-28+at+9.05.59+AM.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Happy Working with Mac + NTFS&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5822828830268784834?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5822828830268784834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/11/mac-osx-lion-write-mount-ntfs-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5822828830268784834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5822828830268784834'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/11/mac-osx-lion-write-mount-ntfs-file.html' title='Mac OSx [Lion] Write Mount NTFS file system'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-sgCMYvSW0pg/TtL_9zeO2OI/AAAAAAAAW8E/_1uJbtcIMp4/s72-c/Screen+Shot+2011-11-28+at+8.58.02+AM.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7850781905626237393</id><published>2011-11-26T17:46:00.001+05:30</published><updated>2011-11-27T23:51:12.912+05:30</updated><title type='text'>AWSome, Electrifying User Group Meeting</title><content type='html'>On a cloudy morning we had a cloud meet up. Am talking about the&amp;nbsp;&lt;a href="http://www.meetup.com/AmazonAWS-Bangalore"&gt;AWS User Group&amp;nbsp;Bangalore Meetup&lt;/a&gt;. Since it was cloudy, drizzling and raining our expectation was really low ( not more than 5 people ;-) ). To our surprise we have 20+ guys coming in that to with various experience and skill levels. Can we ask for more ?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.meetup.com/AmazonAWS-Bangalore"&gt;AWS User Group&amp;nbsp;Bangalore Meetup&lt;/a&gt;&amp;nbsp;is&amp;nbsp;a 270 strong community of AWS'er who regularly meet up once every month for the last 1 year. &lt;br /&gt;&lt;br /&gt;We started this meet up with a introduction to each other and some games to warm up. I just realized we have quiet a awesome bunch of participants.&amp;nbsp;Some of them have the following profiles&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li style="text-align: left;"&gt;Founder of new startups&amp;nbsp;&lt;/li&gt;&lt;li style="text-align: left;"&gt;Infrastructure team from companies like iGate Patni, HP&lt;/li&gt;&lt;li style="text-align: left;"&gt;Some one working for Infosys also studying at IIIT-B&lt;/li&gt;&lt;li style="text-align: left;"&gt;Working with Amazon, also a contributor to Hbase&lt;/li&gt;&lt;li style="text-align: left;"&gt;Private Cloud Providers&amp;nbsp;&lt;/li&gt;&lt;li style="text-align: left;"&gt;Few trying to scaling data to couple of tera bytes&lt;/li&gt;&lt;li style="text-align: left;"&gt;and of course from stealth mode startups :)&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/-EzzPujkuqGU/TtJ80dIrjrI/AAAAAAAAW7k/3L7Zpay_Fnc/s1600/Desktop1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://2.bp.blogspot.com/-EzzPujkuqGU/TtJ80dIrjrI/AAAAAAAAW7k/3L7Zpay_Fnc/s400/Desktop1.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;This time the topic was around Cassandra, we were trying to get some speakers but since we could not find any experts we decide to self learn and group study ( remember good old college days :) )&lt;br /&gt;&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-99fJLFqHCV0/TtDc9hLfqOI/AAAAAAAAW7U/ikwqpPswBJc/s1600/CAP-Theorem.JPG" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="193" src="http://2.bp.blogspot.com/-99fJLFqHCV0/TtDc9hLfqOI/AAAAAAAAW7U/ikwqpPswBJc/s200/CAP-Theorem.JPG" width="200" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;CAP&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/NoSQL"&gt;Why NoSQL&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.slideshare.net/jericevans/an-introduction-to-cassandra"&gt;Introduction to Cassandra&lt;/a&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/CAP_theorem"&gt;CAP Theorem&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://wiki.apache.org/cassandra/GettingStarted"&gt;Getting started with Cassandra&amp;nbsp;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Read/Write Scalability&amp;nbsp;&lt;/li&gt;&lt;li&gt;Why is Facebook moving away from Cassandra&lt;/li&gt;&lt;li&gt;Competitive Technology&amp;nbsp;&lt;/li&gt;&lt;li&gt;Schema Design&amp;nbsp;&lt;/li&gt;&lt;li&gt;Migration from traditional SQL&amp;nbsp;&lt;/li&gt;&lt;li&gt;Write ahead locking&amp;nbsp;&lt;/li&gt;&lt;li&gt;Use case in our life&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-jfTJDfW46uo/TtJ9h9PBdVI/AAAAAAAAW7s/vEx1nJ1RzTM/s1600/20111126_124022.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://4.bp.blogspot.com/-jfTJDfW46uo/TtJ9h9PBdVI/AAAAAAAAW7s/vEx1nJ1RzTM/s200/20111126_124022.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;After deciding this we divided ourselves into 3 teams who took up topics and started group study on the subjects. 25 minutes later we regrouped and presented our learning. We also did setup cassandra in a machine and did a live demo of its usage. &amp;nbsp;We also got to know about a tool &lt;a href="http://whirr.apache.org/"&gt;Whirr&lt;/a&gt;&amp;nbsp;which allows us to setup AMI Cluster of our choice in AWS EC2 in less than 15 minutes ( yes that's right in 15 minutes ).&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-XwbVPncZWwQ/TtJ-C0tDe3I/AAAAAAAAW70/qyGzA5iHeKw/s1600/20111126_124004.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="150" src="http://4.bp.blogspot.com/-XwbVPncZWwQ/TtJ-C0tDe3I/AAAAAAAAW70/qyGzA5iHeKw/s200/20111126_124004.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Thanks to Vijay Rayapati and his team from Kuliza who made all this possible. Also big thanks to his office kitchen who served us nice Coffee,Tea, Biscuits and finally a fruit bowl.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We loved spending time with every one who had come for today's meet up.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Next meet up is planned around setting up private cloud using eucalyptus. Vivek Juneja has offered his place (Torry Harris Bangalore Office) for the meet up and we hope to setup a private cloud on a commodity hardware.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-KoZP1HWiKok/TtJ-ludMqMI/AAAAAAAAW78/CrMDRGy0LLc/s1600/20111126_140023.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-KoZP1HWiKok/TtJ-ludMqMI/AAAAAAAAW78/CrMDRGy0LLc/s320/20111126_140023.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7850781905626237393?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7850781905626237393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/11/awsome-electrifying-user-group-meeting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7850781905626237393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7850781905626237393'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/11/awsome-electrifying-user-group-meeting.html' title='AWSome, Electrifying User Group Meeting'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-EzzPujkuqGU/TtJ80dIrjrI/AAAAAAAAW7k/3L7Zpay_Fnc/s72-c/Desktop1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2828095442775489773</id><published>2011-11-10T00:59:00.001+05:30</published><updated>2011-11-10T01:15:23.039+05:30</updated><title type='text'>Getting Things Done + Culture Code "Things" = Getting my "Things" Done</title><content type='html'>&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-injvzmCV_KA/TrrW-fXW3gI/AAAAAAAAW6E/5aH4M5VZ1HY/s1600/screenshot_things_big4.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="296" src="http://3.bp.blogspot.com/-injvzmCV_KA/TrrW-fXW3gI/AAAAAAAAW6E/5aH4M5VZ1HY/s320/screenshot_things_big4.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;I have been using Culture Code "Things" for a while from now. Its one of the most sexiest Mac Application i have ever used. &amp;nbsp;It uses the best Information Architecture and UX Principles. My friend keeps saying this "Keep Simple Things Simple and Complex Things Possible" and "Things" is a perfect example of this.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;The reason why am writing this blog is not to evangelize about "Things" ( me no where related to Culture Code) but to share the way i found my way of GTD. &amp;nbsp;Before "Things" i have used many tools and miserably failed ( I believe in the principle of FailFast, do things faster and learn it from the failure, faster ;) Again thanks to a brilliant friend ( Bhavin )&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;At any point am dealing with at least 10+ projects and need for something like this is obvious ;)&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;GTDInbox, was a brilliant tool, a plugin for browser which allows marking email into different labels/buckets (@Action, @Next Action, etc … and P/&amp;lt;ProjectNames&amp;gt;). This worked for a while but only problem being every activity is gmail/browser dependent. What if am on the road meeting a client and need to mark action items ? W.r.t email i have made this plan, i use gmail star (*) and make sure i reply back *'ed email ASAP (possible before EOD)&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Lesson learned from this is we collect tasks from multiple sources and relying only on email/browser may not be a great idea. This made me look for other ways to manage and i started experimenting other online tools. The problem remains the same (not able to use it offline and multiple source of inputs)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Then i moved on to mind maps (tried free mind and mindmeister.com). It really helped brainstorm but using it manage tasks perhaps is a bad idea. Moving aroundaction item is not that easy, calendar schedule is not great. In a snapshot its tough to get what next item unless i spend time organizing it.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;I wanted some thing simple and to the point. This is when i started using http://culturedcode.com/things/&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;How do i use it effectively: when i get idea/action items i go on adding it in inbox, without worrying much about where it belongs to. When ever i get a bit of free time or before EOD i move each item in to trackable items in respective project or if its scheduled i add it in calendar, which is again synced back to google calendar.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Over a period of time when i look at Today i have exact schedule of the day + fare idea of what's next and calendar takes care of repetitive items.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Its a great journey so far with Things which has become integral part of my daily life. Thanks to great brain and developers behind things.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Wish it has a android port ;)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2828095442775489773?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2828095442775489773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/11/getting-things-done-culture-code-things.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2828095442775489773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2828095442775489773'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/11/getting-things-done-culture-code-things.html' title='Getting Things Done + Culture Code &quot;Things&quot; = Getting my &quot;Things&quot; Done'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-injvzmCV_KA/TrrW-fXW3gI/AAAAAAAAW6E/5aH4M5VZ1HY/s72-c/screenshot_things_big4.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-55600114731937944</id><published>2011-11-04T17:23:00.000+05:30</published><updated>2011-11-04T17:23:33.947+05:30</updated><title type='text'>Continuous Improvement - [ Scrum | Kanban | One Piece Flow ]</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Been working with few company to get Agility in the development process. There are quiet a few things that i had to unlearn :). Wanted to summarize few things which i have observed over the past few weeks/months.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;The need of any company is churn out things faster "without compromising on code/product quality", this ensure we keep the customer happy and also means sales team has more confidence in the technology/product team. To get the ball rolling there need to be acceptance by management, by the team and end customer. (if a customer is expecting all together then we don't have much choice ;) )&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Let's start with definitions:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;b&gt;Scrum&lt;/b&gt;&amp;nbsp;is an&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Iterative_and_incremental_development" style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: none; background-origin: initial; color: #0645ad; text-decoration: none;" title="Iterative and incremental development"&gt;iterative, incremental&lt;/a&gt;&amp;nbsp;framework for project management often seen in&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Agile_software_development" style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: none; background-origin: initial; color: #0645ad; text-decoration: none;" title="Agile software development"&gt;agile&amp;nbsp;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Agile_software_development" style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: none; background-origin: initial; color: #0645ad; text-decoration: none;" title="Agile software development"&gt;software development&lt;/a&gt;, a type of&lt;a href="http://en.wikipedia.org/wiki/Software_engineering" style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: none; background-origin: initial; color: #0645ad; text-decoration: none;" title="Software engineering"&gt;software engineering&lt;/a&gt;. All the features that we need to develop goes to a backlog and from there it get broken down to smaller sprint cycles which is typical 7 - 20 days based on team and project sizes. This process ensure faster feedback hence correcting the mistakes faster. The most important here is daily standup and regular reviews and end of sprint retrospect "what went well, what can be improved"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Yes one of the assumption is we make mistakes ;) ( common we are humans ... to err is human ) but focus is not on mistakes, but to learn faster from the mistakes and correct it as we go alone. Like a Zen master saying, make mistakes but don't repeat the same mistakes ;)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-zEdv8t7b50w/TrPFEmIJ-MI/AAAAAAAAW5E/ysSNeFvN8jA/s1600/800px-Scrum_process.svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="160" src="http://4.bp.blogspot.com/-zEdv8t7b50w/TrPFEmIJ-MI/AAAAAAAAW5E/ysSNeFvN8jA/s320/800px-Scrum_process.svg.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Kanban aka signboard. Scrum is awesome but we need visual clue. Like the old saying, seeing is believing. When i started my scrum we have used google docs excel sheet as a tracker. It worked really well in a distributed team (4 countries collaborating). In my another assignment we tried used smart tools like pivotaltracker, trello but nothing clicked with the team. This is the time i went back to old school - using a physical dashboard. As folks come in to work desk they can see their bucket of work and move the post-it to either "done" or "doing" and start the day. This ensure transparency among the team members and managers do get a sense of what happening on a daily basis. Yeah its kind of micro manage but with a good intent (hopefully ;) )&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-xAVVxoEwgA4/TrPEKF5yC3I/AAAAAAAAW48/MhqwZ9gR_jA/s1600/kanban-example.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://1.bp.blogspot.com/-xAVVxoEwgA4/TrPEKF5yC3I/AAAAAAAAW48/MhqwZ9gR_jA/s320/kanban-example.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;This is all great, but what about churning out what is needed, customer deliverable. If this is not produced what ever we are its of no use.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/--Pg8i4RnG18/TrPI62zB9RI/AAAAAAAAW5M/KDq5ITG590k/s1600/Onepie2.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/--Pg8i4RnG18/TrPI62zB9RI/AAAAAAAAW5M/KDq5ITG590k/s1600/Onepie2.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;The typical team are built vertical, but the need is to have a cross functional/horizontal team which can do multiple things and deliver what is most important to the customer, a working usable feature/product. &amp;nbsp;In the typical batch mode ( my team is completed their work ) is not helping a company because customer is waiting for other team to finish their respective work and give him a usable finished product.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Does all the above ensure Agility in teams ? Answer is perhaps Yes &amp;amp; No. There is lot of team dynamics. Like we say the person can be defined good if he finishes his work on time but he is great when he can help others in the team. And a Scrum team is no different. Its a single unit which has a end-to-end owner ship who has insights into what customer is asking for as well as idea about the next set of feature he is looking to build. Also extremely important not to criticize individuals in the team. During the retrospective meetings bring these mistakes/wrong decision points and collaboratively solve such issues. This requires maturity from the senior leaders and would take a bit of time to change the style of working both from the team members and leaders. Managers need to let go of their controlled fashion. (Freedom comes with responsibility ;) )&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;The above style of working has to be complemented with few other technology processes like Continuous Integration - which ensures we have shorter integration cycles. What you check in is available for QA to test in few minutes/hours. Continuous Delivery - This ensure once QA'ed we have a release build that gets built/packages and ready for deployment.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;With the balance in right process,investing in right technology and few strategic optimization in the way we work, we take few steps towards brining Agility to the development teams. Each team and each company will have a phase of innovating the right process.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Let's get rid of "I as Individual" to "We as a Team"&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Agile Rocks !&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;Reference:&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;Scrum http://www.youtube.com/watch?v=Q5k7a9YEoUI&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;Kanban and Scrum http://www.youtube.com/watch?v=0EIMxyFw9T8&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;One Piece Flow&amp;nbsp;http://video.google.com/googleplayer.swf?docid=5799919116012217552&amp;amp;hl=en&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;http://en.wikipedia.org/wiki/Kanban&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;http://en.wikipedia.org/wiki/Scrum_(development)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif; font-size: xx-small;"&gt;http://www.thetoyotasystem.com/lean_concepts/one_piece_flow.php&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-55600114731937944?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/55600114731937944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/11/continuous-improvement-scrum-kanban-one.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/55600114731937944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/55600114731937944'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/11/continuous-improvement-scrum-kanban-one.html' title='Continuous Improvement - [ Scrum | Kanban | One Piece Flow ]'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-zEdv8t7b50w/TrPFEmIJ-MI/AAAAAAAAW5E/ysSNeFvN8jA/s72-c/800px-Scrum_process.svg.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2477646895613801508</id><published>2011-11-03T17:10:00.000+05:30</published><updated>2011-11-03T17:10:09.358+05:30</updated><title type='text'>Impressed with printo</title><content type='html'>I had run out of my visiting card and this time decided to visit the corner shop - &lt;a href="http://www.printo.in/"&gt;printo&lt;/a&gt;. Am really awed at the turn around time. (this is my first experience with &lt;a href="http://www.printo.in/"&gt;printo&lt;/a&gt; ;) )&lt;br /&gt;&lt;br /&gt;Went to kormangala &lt;a href="http://www.printo.in/"&gt;printo&lt;/a&gt; store, browsed thru the business card templates. Decide to pick a simple design ( vertical card ). Since i like Tahoma font decide to use that. The entire process took around 10 minutes.&lt;br /&gt;&lt;br /&gt;Next challenge was to get the paper, here is decide to use my hotline (my friend who is a print/design expert) suggest some GSM standard (which i did not understand) but selected something that is 250GSM and Cream color paper.&lt;br /&gt;&lt;br /&gt;Phew 10 minutes later i had my batch of card ready.&lt;br /&gt;&lt;br /&gt;Can't even imagine this process being this simple.&lt;br /&gt;&lt;br /&gt;Great job &lt;a href="http://www.printo.in/"&gt;printo&lt;/a&gt;, you guys really made printing easier for common man !&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2477646895613801508?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2477646895613801508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/11/impressed-with-printo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2477646895613801508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2477646895613801508'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/11/impressed-with-printo.html' title='Impressed with printo'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3262142930586844890</id><published>2011-07-27T12:11:00.002+05:30</published><updated>2011-07-27T12:12:01.082+05:30</updated><title type='text'>usb automount from bash</title><content type='html'>&lt;br /&gt;&lt;blockquote style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;Been working on a hardware appliance where  i have the&amp;nbsp;vanilla&amp;nbsp;GNU/Linux kernel + X11 system. Need of the hour was a USB Automounter which work out of bash. &amp;nbsp;Experiment with automounter, udiskie, etc .... most of the them have some gotchas (depends on Gnome/KDE libraries).&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Finally zeroed in on devmon which is just brilliant, works out of bash. Download it &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://igurublog.wordpress.com/downloads/script-devmon"&gt;here&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;You need to tweak the policy kit rules a bit as described&lt;/span&gt;.&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;create a file in&lt;i&gt; /var/lib/polkit-1/localauthority/50-local.d&lt;/i&gt; with a &lt;i&gt;.pkla&lt;/i&gt; extension with the following contents:&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;[Access to removable media for the media group]&lt;br /&gt;Identity=unix-group:media&lt;br /&gt;Action=org.freedesktop.udisks.drive-eject;org.freedesktop.udisks.filesystem-mount&lt;br /&gt;ResultAny=yes&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3262142930586844890?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3262142930586844890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/07/usb-automount-from-bash.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3262142930586844890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3262142930586844890'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/07/usb-automount-from-bash.html' title='usb automount from bash'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7618422312476707016</id><published>2011-06-20T17:50:00.000+05:30</published><updated>2011-06-20T17:50:43.564+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='meetup'/><category scheme='http://www.blogger.com/atom/ns#' term='discussion'/><category scheme='http://www.blogger.com/atom/ns#' term='bangalore'/><category scheme='http://www.blogger.com/atom/ns#' term='usergroup'/><category scheme='http://www.blogger.com/atom/ns#' term='null'/><category scheme='http://www.blogger.com/atom/ns#' term='community'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>Rocking 3rd Meetup - AWS User group, Bangalore</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span id="internal-source-marker_0.6619668684434146" style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;After starting in &lt;/span&gt;&lt;a href="http://www.meetup.com/AmazonAWS-Bangalore/"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;"&gt;feb 2011&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; today (june 18th) we are hosting the 3rd meetup of AWS User Group, Bangalore. This was a platform created for AWS users by AWS users. As a co-founder my agenda is pretty simple and is based on following few points&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;make every minutes during the meetup valuable for every one in the group&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;collaborate where ever possible &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;create a sense of togetherness &amp;amp; enrich existing knowledge&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;see what else we can do to improve the upcoming meetups &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh5.googleusercontent.com/RmhdscVgUrLEAWFzZIcywj3Ix9A_-zYEer3zavEKpnEMM7kkfkxdq2hXgjNDqbYO4xSbp086mRl0HMWEYG_ytQ07sFYBZoTLm383wXozxX_O0tumRqg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="https://lh5.googleusercontent.com/RmhdscVgUrLEAWFzZIcywj3Ix9A_-zYEer3zavEKpnEMM7kkfkxdq2hXgjNDqbYO4xSbp086mRl0HMWEYG_ytQ07sFYBZoTLm383wXozxX_O0tumRqg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;AWS also has a long time user, redbus.in. &lt;/span&gt;&lt;a href="http://www.linkedin.com/pub/pradeep-kumar/6/3a1/2bb"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;"&gt;Pradeep&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; shared his experience (he is one of the earliest members of redbus technical team). I have recorded some of his important discussion points&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Arial;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; padding-bottom: 6px; padding-left: 6px; padding-right: 6px; padding-top: 6px; text-align: left;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Dy4E1VFv4NQ/Tf8497FxuzI/AAAAAAAAWDA/fN7mJeu2TUY/s1600/IMG_3561.JPG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="200" src="http://1.bp.blogspot.com/-Dy4E1VFv4NQ/Tf8497FxuzI/AAAAAAAAWDA/fN7mJeu2TUY/s200/IMG_3561.JPG" width="133" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px; padding-top: 4px; text-align: center;"&gt;Pradeep, RedBus&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;When they started they had a fluctuating inventory, data size can go up, cpu usage can really really go up, etc... they started their setup in us-east and now its running in singapore since most of their customers are from India. The initial latency when it used to run in us-east was around 300ms and now its around 75 ms.&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Have grouped the ami's based on production vs stagging&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Built a front end (may be using smartgwt, extgwt no sure) to manage their deployment process using Amazon SDK. (pls open source it ;) )&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;If anything wrong with latest / updated system the old AMI is used and its reattached to load balancer &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Cloud watch is used to monitor, and in their experience cloud watch data is almost 80-90% accurate. As of now they use CPU/Load based scaling and works pretty well (especially in the night :) ). Also has nagios monitoring in place for application which also sends a sms alerts in there are major outages in application. &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Did not had a internal DBA and started using RDS. They use RDS read only snapshot for True Staging testing. Saved a lot of money and had huge benefit while flushing out new releases (read-only snapshots are used for testing)&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;There are few server which is running in .net and few of them in linux. Both of them run reasonably well without many issues. Perhaps windows take a bit longer to be up &amp;amp; running. &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;After recent Amazon failure, seriously considering disaster recovery in another region.&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Use SQS for public/customer facing queues, but found that RabitMQ is much cheaper and well suited for internal queues. &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Use CI (hudson/jenkins) for test deployments but for production they have written scripts using aws-sdk which does intelligent ami creation and replacing the existing ami (attached to load balancer) with new ami's. &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;In short his recommendation was if you were a startup and need scaling, just go for it. As you understand the business fine tune the system to deliver its best. &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;When we started planning for the Jun 18th and this is when &lt;/span&gt;&lt;a href="http://null.co.in/"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;"&gt;null bangalore&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; got in touch with me and said why not we do a shared meetup where we can learn from each other. Result of that was we had in total of 40 people coming for the meetup and do i need to say it was brilliant !!! &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://null.co.in/"&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;"&gt;null&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; was started in 2008 by Aseem and Murtuja in pune and is now spread to about 7 cities within India. null community have a decent exposure with AWS (got exposed to AWS as part of null conf hack competition). There are lot of interesting events like Defcon, Xcon, CoCon, etc.... Goal of the this community is to create tools in open domain and assist the security community. They also give presentation in corporates and government agencies. Very interesting Indian names of their events like keeda for vulnerability database, Jugaad - for Linux thread injection kit, humla, etc .. &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;As part of this meetup bunch of things were discussed. Security need to be looked at every aspect of our work. As far as AWS is concerned there are few things which need to be taken care. &lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul&gt;&lt;a href="http://3.bp.blogspot.com/-j_hS2dv60ps/Tf85nGE_4FI/AAAAAAAAWDQ/U4Sg64fHoU8/s1600/IMG_3572.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="213" src="http://3.bp.blogspot.com/-j_hS2dv60ps/Tf85nGE_4FI/AAAAAAAAWDQ/U4Sg64fHoU8/s320/IMG_3572.JPG" width="320" /&gt;&lt;/a&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;to avoid session hijacking, use a new firefox profile instead of opening a new tab &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;use a hardened ami, just to make sure no spyware is sitting in side the ami (otherwise when u start ur instance ur IP will be available with a hacker ;-) )&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;have a VPS machine and whitelist its IP so that only from required network you connect&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;use ssh connection, login and update the sshd-config to only allow key + passphrase based login &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;use file monitoring systems like tripwire or any other hash monitoring agents to make sure no rootkit or any other trojan is working behind the scene. One idea that came out was to integrate cloud watch with trip wire and have its output monitored in realtime ;-) &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;need to review the security at the connection start point as well, for eg: the machine you are connecting from. If we have passphrase less login to AWS machines and you connection start point machine is less secure that its as if there is no security. &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;since AWS network wont allow penetration testing (metasploit), its better to setup some machines locally and have the app tested properly before deploying (infact this is one of AWS recommend way as well)&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;watch out for tools, which can potentially contain a trojan sitting inside. Download tools/firefox plugins based on user recommendation, ratings, etc .. not just looking at the title. &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;In short i would visualize it this way: &lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;OS &lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Hardened &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;No unwanted application running (for eg: tomcat manager which by default has standard password)&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Latest security patches&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;File System&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Data integrity Check at regular intervals &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Application &lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;This is very specific to you, can have multiple measure like secure coding/code review/penetration testing/sql injection testing/ etc &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Network&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;using ssh where ever possible, no password logins. &lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: circle; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;keep changing you IP, with route 53 this is very trivial &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Some of the guidelines that you can keep an eye on &lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;CIS - Center for Internet Security http://www.cisecurity.org/&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;National Institue of Standards &amp;amp; Technology http://www.nist.gov/index.html&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;From Amazon http://aws.amazon.com/about-aws/whats-new/2008/09/05/amazon-web-services-security-whitepaper/&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: #000099; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://www.linkedin.com/pub/abishek-laxminarayan/3/143/750"&gt;&lt;span class="Apple-style-span" style="-webkit-text-decorations-in-effect: none; color: black; font-family: Times; font-size: small; white-space: normal;"&gt;&lt;/span&gt;Abishek&lt;/a&gt;&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; spoke in brief about the vision of Page Turners. Its a brilliant idea to create a vibrant community space (i will write another blog sonn on what it means by a community space). &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Finally we had a brilliant interactive educative session for all. &lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Thanks to all the volunteers who made this happen, without their dedication and hard work, this just would have been a dream !! &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;For more activities visit http://www.meetup.com/AmazonAWS-Bangalore&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: transparent; color: black; font-family: Arial; font-size: 11pt; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7618422312476707016?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7618422312476707016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/06/rocking-3rd-meetup-aws-user-group.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7618422312476707016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7618422312476707016'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/06/rocking-3rd-meetup-aws-user-group.html' title='Rocking 3rd Meetup - AWS User group, Bangalore'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-Dy4E1VFv4NQ/Tf8497FxuzI/AAAAAAAAWDA/fN7mJeu2TUY/s72-c/IMG_3561.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6556341167566280628</id><published>2011-06-18T19:10:00.001+05:30</published><updated>2011-06-18T19:10:43.843+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='lightweight'/><category scheme='http://www.blogger.com/atom/ns#' term='clean'/><category scheme='http://www.blogger.com/atom/ns#' term='gtk'/><category scheme='http://www.blogger.com/atom/ns#' term='uzbl'/><category scheme='http://www.blogger.com/atom/ns#' term='uzbl-core'/><category scheme='http://www.blogger.com/atom/ns#' term='philosophy'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='X11'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>A browser that adheres to the unix philosophy</title><content type='html'>A browser that adheres to the unix philosophy, and also at the same time lightweight which support X11 geometry, javascript, html, css, etc was the need of the hour.&lt;br /&gt;&lt;br /&gt;Few days me and &lt;a href="http://www.linkedin.com/in/simrang"&gt;simran&lt;/a&gt; was banging our head to find one. There are quiet a few of them like dillo, uzbl-core,&amp;nbsp;kazehakase (interesting name right !!!), etc.&lt;br /&gt;&lt;br /&gt;Out of all the browsers dillo seems is really really fast but has no javascript engine. kazehakase is brilliantly engineered but take a long time to understand the xml format for configuration. uzbl-core on the other hand is just perfect for gtk based desktop and follows the standard linux philosophy.&amp;nbsp;Very minimal interface. No unnecessary interface elements and its controllable through a FIFO and with external scripts (must if you want to script it)&lt;br /&gt;&lt;br /&gt;Read more about uzbl &lt;a href="http://www.uzbl.org/"&gt;here&lt;/a&gt;&amp;nbsp;Some screen shots &lt;a href="http://www.uzbl.org/wiki/shots"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6556341167566280628?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6556341167566280628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/06/browser-that-adheres-to-unix-philosophy.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6556341167566280628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6556341167566280628'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/06/browser-that-adheres-to-unix-philosophy.html' title='A browser that adheres to the unix philosophy'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6439658004683679877</id><published>2011-06-18T17:47:00.001+05:30</published><updated>2011-06-18T17:48:45.769+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='hpd530'/><category scheme='http://www.blogger.com/atom/ns#' term='bios'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>HP Compaq d530 Small Form Factor Desktop PC - BIOS password reset and BIOS update</title><content type='html'>&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;Here are the steps for a step by step update of [HP d530] a small cute desktop box. This update is to make sure it can automatically on a pre specified Day of a week and time. &amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-_i-YSJtq12Q/TfyPsyljBLI/AAAAAAAAWBY/6PqLd-Jn7JQ/s1600/18062011611.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-_i-YSJtq12Q/TfyPsyljBLI/AAAAAAAAWBY/6PqLd-Jn7JQ/s320/18062011611.jpg" width="320" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;If you have to reset the password, follow the instructions below.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Jumper you are looking for should be green and located near the little yellow CMOS reset button on the motherboard--which is near the silver coin cell battery. Specifically, the jumper is closer to the edge of the motherboard. It is pretty much in the open.&amp;nbsp; No major parts nearby.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-RhbOxgJ2Rwo/TfyP0wJr7WI/AAAAAAAAWB0/PAAJZOgsv_4/s1600/18062011617.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-RhbOxgJ2Rwo/TfyP0wJr7WI/AAAAAAAAWB0/PAAJZOgsv_4/s400/18062011617.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;Below are the instructions to clear the password:&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;Resetting the Password Jumper&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;To disable the power-on or setup password features, or to clear the power-on or setup passwords,complete the following steps:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', sans-serif;"&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;ol&gt;&lt;li&gt;Shut down the operating system properly, then turn off the computer and any external devices,&amp;nbsp;and disconnect the power cord from the power outlet.&lt;/li&gt;&lt;li&gt;With the power cord disconnected, press the power button again to drain the system of any residual&amp;nbsp;power.&lt;/li&gt;&lt;li&gt;Remove the computer cover or access panel&lt;/li&gt;&lt;li&gt;Locate the header and jumper. [&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;NOTE: The password jumper is green so that it can be easily identified.]&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Remove the jumper from pins 1 and 2. Place the jumper on either pin 1 or 2, but not both, so that&amp;nbsp;it does not get lost&lt;/li&gt;&lt;li&gt;Replace the computer cover or access panel&lt;/li&gt;&lt;li&gt;Reconnect the external equipment&lt;/li&gt;&lt;li&gt;Plug in the computer and turn on power. Allow the operating system to start. This clears the current&amp;nbsp;passwords and disables the password features&lt;/li&gt;&lt;li&gt;To establish new passwords, repeat steps 1 through 4, replace the password jumper on pins 1 and&amp;nbsp;2, then repeat steps 6 through 8.&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;WARNING! To reduce the risk of personal injury from electrical shock and/or hot surfaces, be&amp;nbsp;sure to disconnect the power cord from the wall outlet, and allow the internal system components&amp;nbsp;to cool before touching.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;&lt;br /&gt;CAUTION: When the computer is plugged in, the power supply always has voltage applied to&amp;nbsp;the system board even when the unit is turned off. Failure to disconnect the power cord can result&amp;nbsp;in damage to the system.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;&lt;br /&gt;Static electricity can damage the electronic components of the computer or optional equipment.&amp;nbsp;Before beginning these procedures, ensure that you are discharged of static electricity by briefly&amp;nbsp;touching a grounded metal object. See the Safety &amp;amp; Regulatory Information guide for more&amp;nbsp;information.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Once the password reset is done, we can boot the windows harddisk, download the latest BIOS from &lt;a href="http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareIndex.jsp?lang=en&amp;amp;cc=uk&amp;amp;prodNameId=316715&amp;amp;prodTypeId=12454&amp;amp;prodSeriesId=316713&amp;amp;swLang=13&amp;amp;taskId=135&amp;amp;swEnvOID=1093#120"&gt;here&lt;/a&gt; and update the same.&amp;nbsp;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-2olBiWQuEIA/TfyP6A3Be-I/AAAAAAAAWCg/Xl_PnPdNkOk/s1600/bios_update_step1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/-2olBiWQuEIA/TfyP6A3Be-I/AAAAAAAAWCg/Xl_PnPdNkOk/s320/bios_update_step1.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-8sC6GrXisaA/TfyP6wAF2zI/AAAAAAAAWCo/t849IkGRb-Q/s1600/bios_update_step2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="249" src="http://1.bp.blogspot.com/-8sC6GrXisaA/TfyP6wAF2zI/AAAAAAAAWCo/t849IkGRb-Q/s320/bios_update_step2.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-oJ5TjDYh34M/TfyP8beoQvI/AAAAAAAAWCs/qEhL_BTH3m0/s1600/bios_update_step3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="251" src="http://1.bp.blogspot.com/-oJ5TjDYh34M/TfyP8beoQvI/AAAAAAAAWCs/qEhL_BTH3m0/s320/bios_update_step3.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-y_OnUigwtsw/TfyP9bcsaPI/AAAAAAAAWCw/WmxNCdlpzmU/s1600/bios_update_step4.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="248" src="http://3.bp.blogspot.com/-y_OnUigwtsw/TfyP9bcsaPI/AAAAAAAAWCw/WmxNCdlpzmU/s320/bios_update_step4.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-QJAiYbPUDbw/TfyP-VQYaTI/AAAAAAAAWC0/D3VzGhSguws/s1600/bios_update_step5.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="241" src="http://4.bp.blogspot.com/-QJAiYbPUDbw/TfyP-VQYaTI/AAAAAAAAWC0/D3VzGhSguws/s320/bios_update_step5.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Wmz668n9rYc/TfyP_miOQqI/AAAAAAAAWC4/oZTgi_FQ_VU/s1600/bios_update_step6.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-Wmz668n9rYc/TfyP_miOQqI/AAAAAAAAWC4/oZTgi_FQ_VU/s320/bios_update_step6.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-4ydPyZQAyAY/TfyQAwa1omI/AAAAAAAAWC8/Eh5n30dk81s/s1600/bios_update_step8.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="216" src="http://1.bp.blogspot.com/-4ydPyZQAyAY/TfyQAwa1omI/AAAAAAAAWC8/Eh5n30dk81s/s320/bios_update_step8.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Please make sure that while updating the BIOS, the you have backup power (UPS), else it will result in inconsistent state and your harddisk may &amp;nbsp;not boot.&amp;nbsp;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Once the update is over, restart and go to BIOS menu and edit the power options&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-54CGWpabc1c/TfyPuIVA1oI/AAAAAAAAWBc/NoTlBeoG7qU/s1600/18062011612.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-54CGWpabc1c/TfyPuIVA1oI/AAAAAAAAWBc/NoTlBeoG7qU/s320/18062011612.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-rdrWbGmp_nM/TfyPyAb4BuI/AAAAAAAAWBs/O4fOXL80FqA/s1600/18062011615.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-rdrWbGmp_nM/TfyPyAb4BuI/AAAAAAAAWBs/O4fOXL80FqA/s320/18062011615.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #111111; line-height: 17px;"&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, sans-serif;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6439658004683679877?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6439658004683679877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/06/hp-compaq-d530-small-form-factor.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6439658004683679877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6439658004683679877'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/06/hp-compaq-d530-small-form-factor.html' title='HP Compaq d530 Small Form Factor Desktop PC - BIOS password reset and BIOS update'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-_i-YSJtq12Q/TfyPsyljBLI/AAAAAAAAWBY/6PqLd-Jn7JQ/s72-c/18062011611.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3696376149884491605</id><published>2011-06-16T15:02:00.003+05:30</published><updated>2011-07-29T11:27:44.415+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='xorg'/><category scheme='http://www.blogger.com/atom/ns#' term='X11'/><title type='text'>xorg.conf + no screensaver or no screen blank</title><content type='html'>the following comes handy if you want your 'X' not to sleep or start the screensaver.&lt;br /&gt;&lt;br /&gt;in the "Monitor" section add this one line&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre class="PROGRAMLISTING" style="background-color: #eeeeee; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; font-family: monospace; line-height: 1; margin-bottom: 0.75em; margin-left: 0px; margin-right: 0px; margin-top: 0.75em; padding-bottom: 1ex; padding-left: 1ex; padding-right: 1ex; padding-top: 1ex;"&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;Option         "DPMS"&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; border-bottom-color: rgb(238, 238, 204); border-bottom-left-radius: 2px 2px; border-bottom-right-radius: 2px 2px; border-bottom-style: solid; border-bottom-width: 1px; border-color: initial; border-left-color: rgb(238, 238, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(238, 238, 204); border-right-style: solid; border-right-width: 1px; border-style: initial; border-top-color: rgb(238, 238, 204); border-top-left-radius: 2px 2px; border-top-right-radius: 2px 2px; border-top-style: solid; border-top-width: 1px; display: block; font-family: monospace; font-size: 11px; font-style: inherit; font-weight: inherit; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; overflow-x: auto; overflow-y: auto; padding-bottom: 4px; padding-left: 8px; padding-right: 8px; padding-top: 4px; vertical-align: baseline; white-space: pre;"&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: 'lucida grande', 'Lucida Sans Unicode', tahoma, sans-serif; font-size: 13px; line-height: 18px;"&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/blockquote&gt;Add the following as well: &lt;br /&gt;&lt;blockquote&gt;&lt;pre style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; border-bottom-left-radius: 2px 2px; border-bottom-right-radius: 2px 2px; border-bottom-width: 1px; border-color: initial; border-left-color: rgb(238, 238, 204); border-left-width: 1px; border-right-color: rgb(238, 238, 204); border-right-width: 1px; border-style: initial; border-top-color: rgb(238, 238, 204); border-top-left-radius: 2px 2px; border-top-right-radius: 2px 2px; border-top-style: solid; border-top-width: 1px; display: block; font-style: inherit; font-weight: inherit; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; overflow-x: auto; overflow-y: auto; padding-bottom: 4px; padding-left: 8px; padding-right: 8px; padding-top: 4px; vertical-align: baseline; white-space: pre;"&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande', 'Lucida Sans Unicode', tahoma, sans-serif;"&gt;&lt;span class="Apple-style-span" style="background-color: #999999; line-height: 18px;"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; border-collapse: collapse; font-family: Arial, Helvetica, sans-serif; font-size: 13px; line-height: normal; white-space: normal;"&gt;&lt;pre style="border-bottom-color: black; border-bottom-style: solid; border-bottom-width: 1px; border-left-color: black; border-left-style: solid; border-left-width: 1px; border-right-color: black; border-right-style: solid; border-right-width: 1px; border-top-color: black; border-top-style: solid; border-top-width: 1px; font-size: 8pt; margin-bottom: 0.5em; margin-left: 0.5em; margin-right: 0.5em; margin-top: 0.5em; padding-bottom: 0.5em; padding-left: 0.5em; padding-right: 0.5em; padding-top: 0.5em;"&gt;Option          "BlankTime"     "0"&lt;br /&gt;Option          "StandbyTime"   "0"&lt;br /&gt;Option          "SuspendTime"   "0"&lt;br /&gt;Option          "OffTime"       "0"&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;br /&gt;add the above to /etc/X11/xorg.conf and restart 'X'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;more here&lt;br /&gt;&lt;a href="http://www.x.org/archive/X11R6.8.0/doc/xorg.conf.5.html"&gt;http://www.x.org/archive/X11R6.8.0/doc/xorg.conf.5.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.shallowsky.com/linux/x-screen-blanking.html"&gt;http://www.shallowsky.com/linux/x-screen-blanking.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3696376149884491605?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3696376149884491605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/06/xorgconf-no-screensaver-or-no-screen.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3696376149884491605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3696376149884491605'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/06/xorgconf-no-screensaver-or-no-screen.html' title='xorg.conf + no screensaver or no screen blank'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7899573275067396121</id><published>2011-05-28T08:37:00.000+05:30</published><updated>2011-05-28T08:37:24.160+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>Migrating existing public facing machine to more robust AWS Infrastructure (EC2, RDS, Autoscalling)</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;A possible architecture which ensure we have scalable/redundant system using AWS infrastructure. &amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-jcKzcc_lphc/TeBmSaQsV6I/AAAAAAAAV_4/8x2GinXHaP8/s1600/AWS_Architecture__-_enovatemedia.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="208" src="http://2.bp.blogspot.com/-jcKzcc_lphc/TeBmSaQsV6I/AAAAAAAAV_4/8x2GinXHaP8/s400/AWS_Architecture__-_enovatemedia.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7899573275067396121?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7899573275067396121/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/05/migrating-existing-public-facing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7899573275067396121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7899573275067396121'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/05/migrating-existing-public-facing.html' title='Migrating existing public facing machine to more robust AWS Infrastructure (EC2, RDS, Autoscalling)'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-jcKzcc_lphc/TeBmSaQsV6I/AAAAAAAAV_4/8x2GinXHaP8/s72-c/AWS_Architecture__-_enovatemedia.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-331033843543996144</id><published>2011-05-24T11:24:00.001+05:30</published><updated>2011-06-04T01:46:09.513+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='screensetup'/><category scheme='http://www.blogger.com/atom/ns#' term='offline'/><category scheme='http://www.blogger.com/atom/ns#' term='dual monitor'/><category scheme='http://www.blogger.com/atom/ns#' term='howto'/><category scheme='http://www.blogger.com/atom/ns#' term='yumdownload-only'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='nvidia'/><title type='text'>Offline System/RPMUpdates to Fedora using YUM + Setting up Nvidia Driver and Dual monitor</title><content type='html'>Recently after a long time i started using the most&amp;nbsp;favored RPM distribution - Fedora. At the time of download it was Fedora 14 and it looks pretty stable. Using live-usb creator i created a USB stick (using fedora 14 live desktop image). Got things installed on a fresh system. So far so good.&lt;br /&gt;&lt;br /&gt;Now comes the problem of nvidia display card and dual monitor. So my first problem was to get system updated to latest version of kernel and related packages. The machine i installed fedora has no internet access and this creates all the more problem while updating. With yum-downloadonly rpm not any more we can solve this relatively easy (compared to what existing couple of years before ;-) )&lt;br /&gt;&lt;br /&gt;So my first task was to get a virtual machine up and install the same fc14. This i did it on a machine which has internet access. Then i installed the yum-downloadonly rpm&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;yum update yum-downloadonly&lt;/span&gt;&lt;/blockquote&gt;One the above step is complete then run the following command which will resolve the dependency and get the latest updated packages, these packages will not be installed but will be saved onto /root/rpms&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;yum install kernel --downloadonly --downloaddir=/root/rpms/&lt;/span&gt;&lt;/blockquote&gt;Now copy all the downloaded rpms (from /root/rpms) to usb stick.Move the rpms from usb stick to machine where u need offline install say /opt/rpms.&amp;nbsp;Run createrepo &lt;folder been="" copied="" have="" rpms="" to="" where=""&gt;&lt;/folder&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;createrepo /opt/rpms&amp;nbsp;&lt;/span&gt;&lt;/blockquote&gt;Edit/Create yum configuration (/etc/yum.repos.d/fedora-offline.repo)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;[updates]&lt;br /&gt;name=Fedora $releasever - $basearch - Updates&lt;br /&gt;failovermethod=priority&lt;br /&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;baseurl=file:///opt/rpms/&lt;/span&gt;&lt;br /&gt;f$releasever&amp;amp;arch=$basearch&lt;br /&gt;enabled=1&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Clean the yum headers&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;yum clean all&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Start instal/updatel what ever packages you want, from now it will refer to local rpm folder, repeat the steps to get other rpms.&lt;br /&gt;&lt;br /&gt;In our case to get nvidia working we had few more packages to be downloaded. Here are the steps to follow.&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;rpm -Uvh   &lt;a href="http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm"&gt;http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm&lt;/a&gt; &lt;a href="http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm"&gt;http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm&lt;/a&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black; font-family: Times; font-weight: normal; line-height: normal;"&gt;Now install Nvidia drivers:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;yum install kmod-nvidia  xorg-x11-drv-nvidia xorg-x11-drv-nvidia-libs.i686 --downloadonly --downloaddir=/root/rpms &lt;/span&gt;&lt;/blockquote&gt;Make sure the kernel is updated to latest, as in my case it was 2.6.35.13-91.fc14.i686&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once the require nvidia packages are installed then use &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;nvidia-settings&lt;/span&gt; to set the screens. A very handy tool. If you choose TwinView then monitor is extended or else it will run 2 different 'X' servers in 2 different monitor.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-9oflugt5yhI/TdtDADSX32I/AAAAAAAAV-o/AVGQ4p-ejlU/s1600/Screenshot-NVIDIA+X+Server+Settings.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="308" src="http://1.bp.blogspot.com/-9oflugt5yhI/TdtDADSX32I/AAAAAAAAV-o/AVGQ4p-ejlU/s320/Screenshot-NVIDIA+X+Server+Settings.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-4Bhq-WhOKlY/TdtC_mgSATI/AAAAAAAAV-k/PvzSvwaFL6o/s1600/Screenshot-Configure+Display+Device.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="171" src="http://4.bp.blogspot.com/-4Bhq-WhOKlY/TdtC_mgSATI/AAAAAAAAV-k/PvzSvwaFL6o/s320/Screenshot-Configure+Display+Device.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Change the grub.conf to ensure that nouveau driver dosent kick in.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;#boot=/dev/sdb&lt;br /&gt;default=0&lt;br /&gt;timeout=0&lt;br /&gt;splashimage=(hd0,0)/grub/splash.xpm.gz&lt;br /&gt;hiddenmenu&lt;br /&gt;title Fedora (2.6.35.13-91.fc14.i686)&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;root (hd0,0)&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;kernel /vmlinuz-2.6.35.13-91.fc14.i686 ro root=/dev/mapper/VolGroup-lv_root rd_LVM_LV=VolGroup/lv_root rd_LVM_LV=VolGroup/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet &lt;span class="Apple-style-span" style="color: red;"&gt;nouveau.modeset=0 rdblacklist=nouveau&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;initrd /initramfs-2.6.35.13-91.fc14.i686.img&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Zj92BScr9Cs/TdtDA_0VGjI/AAAAAAAAV-s/9frY_XJstj4/s1600/Screenshot-root%2540localhost_%257E.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="197" src="http://1.bp.blogspot.com/-Zj92BScr9Cs/TdtDA_0VGjI/AAAAAAAAV-s/9frY_XJstj4/s320/Screenshot-root%2540localhost_%257E.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;If you are planning to orient the screen to either left,right or invert then you need to add the following in x.org&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Option &amp;nbsp; &amp;nbsp; "RandRRotation" "on"&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Option &amp;nbsp; &amp;nbsp; "Rotate" "CW"&lt;/span&gt;&amp;nbsp;&lt;/blockquote&gt;&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/-GohcRIGM16I/TdtFsV0CirI/AAAAAAAAV_I/SD8N9krxb4o/s1600/Screenshot-1.png.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="201" src="http://2.bp.blogspot.com/-GohcRIGM16I/TdtFsV0CirI/AAAAAAAAV_I/SD8N9krxb4o/s320/Screenshot-1.png.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-ZA7pNPRupHA/TdtC-254o8I/AAAAAAAAV-g/DuHnTlvBPTQ/s1600/Screenshot-NVIDIA+X+Server+Settings-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="302" src="http://3.bp.blogspot.com/-ZA7pNPRupHA/TdtC-254o8I/AAAAAAAAV-g/DuHnTlvBPTQ/s320/Screenshot-NVIDIA+X+Server+Settings-1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Result of all the above effort&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-SKBnxaIHbCw/TdtDMqjknwI/AAAAAAAAV-0/J79H4HuXRHI/s1600/Screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-SKBnxaIHbCw/TdtDMqjknwI/AAAAAAAAV-0/J79H4HuXRHI/s320/Screenshot.png" width="100" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-EyqhFfJJclA/TdtDFHaycVI/AAAAAAAAV-w/4MB7Nxdo2ws/s1600/Screenshot-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="100" src="http://4.bp.blogspot.com/-EyqhFfJJclA/TdtDFHaycVI/AAAAAAAAV-w/4MB7Nxdo2ws/s320/Screenshot-1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Few back and forth of USB stick from offline machine to another machine which has internet access, we are done with ability to update a machine without internet.&lt;br /&gt;&lt;br /&gt;Unix Pipes r()cks !!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-331033843543996144?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/331033843543996144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/05/offline-systemrpmupdates-to-fedora.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/331033843543996144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/331033843543996144'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/05/offline-systemrpmupdates-to-fedora.html' title='Offline System/RPMUpdates to Fedora using YUM + Setting up Nvidia Driver and Dual monitor'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-9oflugt5yhI/TdtDADSX32I/AAAAAAAAV-o/AVGQ4p-ejlU/s72-c/Screenshot-NVIDIA+X+Server+Settings.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7396759025193624040</id><published>2011-02-22T10:46:00.001+05:30</published><updated>2011-02-22T10:46:32.185+05:30</updated><title type='text'>Google Chrome - a fine balance between Design &amp; Implementation</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/-_74Al97a-u8/TWNGr0xYZlI/AAAAAAAAVMM/n2F_WD0MchI/s1600/ScreenClip.jpg"&gt;&lt;img style="MARGIN: 0px 0px 10px 10px; FLOAT: right; CLEAR: both" border="0" alt="" src="http://1.bp.blogspot.com/-_74Al97a-u8/TWNGr0xYZlI/AAAAAAAAVMM/n2F_WD0MchI/s320/ScreenClip.jpg" /&gt;&lt;/a&gt; If you are familiar with Chrome browser (from Google), you will get to see the limits of how designers push the limits of technology and how its implemented.&lt;br /&gt;&lt;br /&gt;Look at this cute little "Cut,Copy,Paste" implementation. Its a proof that we can think crazy for saving space and make features more visible.&lt;br /&gt;&lt;br /&gt;Loving it !&lt;div style='clear:both; text-align:RIGHT'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7396759025193624040?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7396759025193624040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/02/google-chrome-fine-balance-between_22.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7396759025193624040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7396759025193624040'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/02/google-chrome-fine-balance-between_22.html' title='Google Chrome - a fine balance between Design &amp; Implementation'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-_74Al97a-u8/TWNGr0xYZlI/AAAAAAAAVMM/n2F_WD0MchI/s72-c/ScreenClip.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3264546492043542796</id><published>2011-02-19T17:01:00.000+05:30</published><updated>2011-02-19T17:01:21.202+05:30</updated><title type='text'></title><content type='html'>&lt;div style="text-align:center;margin:0px auto 10px;"&gt;&lt;a href="http://4.bp.blogspot.com/-zdmFm5rf6rQ/TV-qCMTS4QI/AAAAAAAAVLY/MQ-Q9BDxY8A/s1600/Desktop.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/-zdmFm5rf6rQ/TV-qCMTS4QI/AAAAAAAAVLY/MQ-Q9BDxY8A/s320/Desktop.jpg" border="0" alt="" /&gt;&lt;/a&gt; &lt;/div&gt;This can't be simpler than this. Check out https://10.cloud.ubuntu.com/. Its a sandbox which is available for an hour for you to try and play with Ubuntu Greatest (10.10 now) in the AWS cloud. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Behind the scene it use AWS api and starts a instance with Ubuntu AMI (You can do the same from EC2 console by choosing the right Ubuntu AMI from alestic.com or AMI page in ec2 console).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But for those who dont want to go thru the hasseles of seeting up a account in amazon but just want to try it in the cloud this perhaps is the best way. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Way to go Ubuntu ! &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style='clear:both; text-align:CENTER'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3264546492043542796?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3264546492043542796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/02/this-cant-be-simpler-than-this.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3264546492043542796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3264546492043542796'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/02/this-cant-be-simpler-than-this.html' title=''/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-zdmFm5rf6rQ/TV-qCMTS4QI/AAAAAAAAVLY/MQ-Q9BDxY8A/s72-c/Desktop.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5276977433796334902</id><published>2011-02-14T12:47:00.002+05:30</published><updated>2011-02-14T12:48:36.062+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='meetup'/><category scheme='http://www.blogger.com/atom/ns#' term='usergroup'/><category scheme='http://www.blogger.com/atom/ns#' term='community'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>First Amazon Web Services User Group Meet in Bangalore</title><content type='html'>Its been a while some of us are cooking this idea of starting an  Amazon Web Service (aka AWS) User Group in Bangalore. As of today i have  created a group in &lt;a href="http://www.meetup.com/AmazonAWS-Bangalore/%20"&gt;meetup&lt;/a&gt;. Our getting started meeting is on Feb 26th, if free &lt;a href="http://www.meetup.com/AmazonAWS-Bangalore/events/16527209/"&gt;join&lt;/a&gt;  us. I should thank few guys (Vivek Juneja, Prem Sankar G, Mocherla,   Janakiram, Vinod [attribo]) who have been motivating as well as   suggesting ideas to make this a great success. &lt;br /&gt;&lt;br /&gt;The  idea is simple, "Meet people face to face". The target audience could be  anyone {User, Developer, Architect, Admin, etc...} who's life revolves  around AWS ecosystem. Any one who is gonna newly get started with AWS  will also be benefited with this User Group.&amp;nbsp; Am currently hosting it in  meetup.com (online) and you can reach the group &lt;a href="http://www.meetup.com/AmazonAWS-Bangalore/"&gt;here&lt;/a&gt; and physical meeting will be in &lt;a href="http://maps.google.com/?q=12.971599,77.594566"&gt;Jaaga.in&lt;/a&gt; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;We are&lt;a href="http://www.meetup.com/AmazonAWS-Bangalore/events/16527209/"&gt; first gonna meet during Feb 26th&lt;/a&gt; (in Jaaga) around 10:30 AM to discuss the various aspects of the group. &lt;br /&gt;&lt;br /&gt;The first user group is planned during March 26th and the same will be announced in meetup.&lt;br /&gt;&lt;br /&gt;The overall format looks like&lt;br /&gt;&lt;ul&gt;&lt;li&gt;a fixed 1 hours of discussion on pre announced topic&amp;nbsp; - 45 minutes &lt;/li&gt;&lt;li&gt;tea break &amp;amp; socializing - 20 min&lt;/li&gt;&lt;li&gt;open session for discussion various day-to-day challenges - 45 minutes&lt;/li&gt;&lt;/ul&gt;Am completely open to accept more inputs from other folks in community.&lt;br /&gt;&lt;br /&gt;Let's create a r()cking AWS community.&lt;br /&gt;&lt;br /&gt;For the people, by the people ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5276977433796334902?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5276977433796334902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/02/first-amazon-web-services-user-group.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5276977433796334902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5276977433796334902'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/02/first-amazon-web-services-user-group.html' title='First Amazon Web Services User Group Meet in Bangalore'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5519549871744021303</id><published>2011-02-11T19:16:00.000+05:30</published><updated>2011-02-11T19:16:38.507+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='raid'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ebs'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>raid 10, let's strip it and then mirror</title><content type='html'>I was exploring the possibility of setting up EBS volume in ec2 for a database instance. Now one important aspect of any application is to reduce latency where ever possible. With EBS its easy to setup a 1TB partition but its just not enough to setup a partition, we need it to serve the data faster as well. &lt;br /&gt;&lt;br /&gt;Let's look at RAID and see how it can help in solving our problem of serving data faster. There are multiple levels of RAID and out of which we are particularly interested in RAID 0 and RAID 1. Combined it becomes RAID 10.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-iYyMLhfE0aA/TVU78lFxaiI/AAAAAAAAVKk/vC4Gk3wjkU0/s1600/Raid10%25282%2529.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://2.bp.blogspot.com/-iYyMLhfE0aA/TVU78lFxaiI/AAAAAAAAVKk/vC4Gk3wjkU0/s400/Raid10%25282%2529.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;RAID 0 - means stripping data == technique of segmenting logically sequential data , such as a file, in a way that accesses of sequential segments are made to different physical storage devices. In our case disk 1 and disk 2. This make sure that performance is taken care.&lt;br /&gt;&lt;br /&gt;RAID 1 - mirroring == replication of logical disk volumes onto separate physical hard disks in real time to ensure continuous availability. This take care data redundancy. &lt;br /&gt;&lt;br /&gt;RAID 10 provides high availability by combining features of RAID 0 and RAID 1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Eric has written a detailed post on how to setup RAID 10 in Ubuntu Linux, read it here http://alestic.com/2009/06/ec2-ebs-raid&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5519549871744021303?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5519549871744021303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/02/raid-10-lets-strip-it-and-then-mirror.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5519549871744021303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5519549871744021303'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/02/raid-10-lets-strip-it-and-then-mirror.html' title='raid 10, let&apos;s strip it and then mirror'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-iYyMLhfE0aA/TVU78lFxaiI/AAAAAAAAVKk/vC4Gk3wjkU0/s72-c/Raid10%25282%2529.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7213491007666219306</id><published>2011-02-10T12:54:00.000+05:30</published><updated>2011-02-10T12:54:28.259+05:30</updated><title type='text'>share it - without a server !!</title><content type='html'>Have you ever thought of running your enterprise/office without relying on a single central server ? If not then take a look at Collanos. Collanos, is a collaboration software built on top of p2p. Unlike other p2p software which is used of illegal file share, collanos is created in such a way that collaboration happens peer to peer. All it need is collanos to be installed and a internet connection. Like like it to has a central server which is used more like DNS (or lookup) and that's it. Once it identifies which clients it has to synchronize then it establishes a p2p and does its job. I kind of the like the aspect of working offline and then once connected to internet it immediately sync's the file.&lt;br /&gt;&lt;br /&gt;This is in total contrast to dropbox, where everything is synchronized to central server. In Collanos everything is synchronized to your peers.&lt;br /&gt;&lt;br /&gt;Check it out http://www.collanos.com/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7213491007666219306?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7213491007666219306/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/02/share-it-without-server.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7213491007666219306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7213491007666219306'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/02/share-it-without-server.html' title='share it - without a server !!'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1709659978467547545</id><published>2011-01-14T17:51:00.001+05:30</published><updated>2011-01-14T17:55:33.076+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='biking'/><category scheme='http://www.blogger.com/atom/ns#' term='bangalore'/><category scheme='http://www.blogger.com/atom/ns#' term='veloscope'/><title type='text'>no parking (go biking)</title><content type='html'>&lt;p&gt;&lt;a href='http://lh3.ggpht.com/_hCFFSV1kPs8/TTA_s-u3LGI/AAAAAAAAVG4/olQm6-btx0Y/1295006759811.jpg'&gt;&lt;img src='http://lh3.ggpht.com/_hCFFSV1kPs8/TTA_s-u3LGI/AAAAAAAAVG4/olQm6-btx0Y/s400/1295006759811.jpg' /&gt;&lt;/a&gt;&lt;/p&gt;I see this board every where in Bangalore these days, and is one of the reason i love biking (aka cycling)   instead of a car. There is also a  bigger reason to worry about - auto's going at the speed of rajanikanth, speeding call center cabs, heavy duty bus which occupies entire road .... all rushing thru city limits, making living here less joyful.  &lt;br/&gt;  &lt;br/&gt; Am sure as a child we would have done loads of biking. Rekindle your inner child and start again. Its actually good fun cycling, first we dont have to worry about "no parking" boards, second cops wont stop you, third you burn unwated calories in your body which results in you enjoying every meal that you eat ;), fourth is i can still travel in city volvos to any where and do the last mile in bike (aka cycle), fifth is we are definetly more green (burn ur fat not fuel ;)), sixth you make tons of friend on you way, seventh is there is still a chance of seeing sky,cloud,stars,sun,moon,people, etc. &lt;br/&gt;  &lt;br/&gt; For sure biking (aka cycling)keep you fit, gives you some time to listen to music or some podcast and make your life bit more enjoyable. &lt;br/&gt;  &lt;br/&gt; (Veloscope a initiative started by couple of us to promote biking &amp; photography in and around Bangalore, India. Visit our facebook page)&lt;div style='clear: both; text-align: center; font-size: xx-small;'&gt;Published with Blogger-droid v1.6.5&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1709659978467547545?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1709659978467547545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/01/no-parking.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1709659978467547545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1709659978467547545'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/01/no-parking.html' title='no parking (go biking)'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_hCFFSV1kPs8/TTA_s-u3LGI/AAAAAAAAVG4/olQm6-btx0Y/s72-c/1295006759811.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6810403653704230415</id><published>2011-01-12T07:30:00.001+05:30</published><updated>2011-01-12T12:00:55.155+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='reference'/><category scheme='http://www.blogger.com/atom/ns#' term='command line'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>Access AWS from command line - quick reference</title><content type='html'>One of cool feature of Amazon &lt;a href="http://aws.amazon.com/"&gt;AWS &lt;/a&gt;is ability to talk to AWS ecosystem thru command line. Why do i think that this is cool, because you can script it. Let's take a look at setting it up.This is not a &lt;a href="http://docs.amazonwebservices.com/AWSEC2/latest/CommandLineReference/"&gt;detailed guide&lt;/a&gt;, its just a quick reference. &lt;br /&gt;&lt;br /&gt;We are gonna use the command line from a shell. Our goal right now is to get 'values' for the key listed below. Line starting with '#' are to be ignored and meant for explanation. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;#JAVA_HOME -&amp;gt; where you java installation, the below path works for Mac. For linux and Windows it would be different &lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home/&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;# ec2-api-tools, this need to be downloaded from http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip and place it where ever you want. &lt;br /&gt;&lt;b&gt;export EC2_HOME=/Applications/ec2/ec2-api-tools&lt;/b&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;# both the .pem has to be generated and download, and if you mis you will have to regenerate. I normally keep this is my dropbox. &lt;br /&gt;&lt;b&gt;export EC2_PRIVATE_KEY=~/.ec2/pk-xxxxx.pem&lt;/b&gt;&lt;br /&gt;&lt;b&gt;export EC2_CERT=~/.ec2/cert-xxxxx.pem&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;# available from the http://aws.amazon.com/account/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;&lt;b&gt;export EC2_ACCNO=1111-2222-3333&lt;br /&gt;export ACCESS_KEY=BABBIO4XTFPTE6UYD3BQ&lt;br /&gt;export SECRET_KEY=jcbsdsadcusjkh867HJk+897bnHygTQoEHj&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;# for easy access &lt;br /&gt;&lt;b&gt;export PATH=$PATH:$EC2_HOME/bin&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Login to your account and click security credentials: &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/_hCFFSV1kPs8/TS0Jrod0UuI/AAAAAAAAVGU/R61XKlvCoX4/s1600/Screen+shot+2011-01-12+at+7.10.41+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/TS0Jrod0UuI/AAAAAAAAVGU/R61XKlvCoX4/s320/Screen+shot+2011-01-12+at+7.10.41+AM.jpg" width="237" /&gt;&lt;/a&gt;&lt;/div&gt;Get your Access and Secret Keys:&amp;nbsp; &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/_hCFFSV1kPs8/TS0JtNXldkI/AAAAAAAAVGY/XjobKXMPH9w/s1600/Screen+shot+2011-01-12+at+7.11.38+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="188" src="http://4.bp.blogspot.com/_hCFFSV1kPs8/TS0JtNXldkI/AAAAAAAAVGY/XjobKXMPH9w/s320/Screen+shot+2011-01-12+at+7.11.38+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Generate your certificate and download pk***.pem and cert-***.pem &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_hCFFSV1kPs8/TS0JuXlL1KI/AAAAAAAAVGc/bCWknPGBRLY/s1600/Screen+shot+2011-01-12+at+7.16.28+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="193" src="http://1.bp.blogspot.com/_hCFFSV1kPs8/TS0JuXlL1KI/AAAAAAAAVGc/bCWknPGBRLY/s320/Screen+shot+2011-01-12+at+7.16.28+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Get you ec2 account number: &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_hCFFSV1kPs8/TS0JwCazGiI/AAAAAAAAVGg/iLp3tJxBHNU/s1600/Screen+shot+2011-01-12+at+7.18.22+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="186" src="http://2.bp.blogspot.com/_hCFFSV1kPs8/TS0JwCazGiI/AAAAAAAAVGg/iLp3tJxBHNU/s320/Screen+shot+2011-01-12+at+7.18.22+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Reference:&lt;br /&gt;&lt;a href="http://aws.amazon.com/documentation/"&gt;http://aws.amazon.com/documentation/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Detailed reference of commnad line&lt;br /&gt;&lt;a href="http://docs.amazonwebservices.com/AWSEC2/latest/CommandLineReference/"&gt;http://docs.amazonwebservices.com/AWSEC2/latest/CommandLineReference/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6810403653704230415?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6810403653704230415/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/01/access-aws-from-command-line-quick.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6810403653704230415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6810403653704230415'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/01/access-aws-from-command-line-quick.html' title='Access AWS from command line - quick reference'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_hCFFSV1kPs8/TS0Jrod0UuI/AAAAAAAAVGU/R61XKlvCoX4/s72-c/Screen+shot+2011-01-12+at+7.10.41+AM.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-889100026666472721</id><published>2011-01-11T11:44:00.001+05:30</published><updated>2011-06-07T20:33:40.750+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='scaling'/><category scheme='http://www.blogger.com/atom/ns#' term='vpc'/><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='ebs'/><category scheme='http://www.blogger.com/atom/ns#' term='s3'/><category scheme='http://www.blogger.com/atom/ns#' term='vpn'/><category scheme='http://www.blogger.com/atom/ns#' term='rrs'/><category scheme='http://www.blogger.com/atom/ns#' term='ec2'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>Scaling from a local server to cloud using Amazon AWS</title><content type='html'>&lt;div style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Goal&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Migrate from existing local network server set up to a cloud appliance and scale up using Amazon AWS platform/ecosystem/tools to meet customer demand&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size: small;"&gt;s. &lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span id="internal-source-marker_0.2134052706732762" style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Intro&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Am  writing this document with few assumptions, the reader is familiar with  Amazon AWS, Cloud in general. It will be nice to know some of the  following key words like AMI, EC2, EBS, Volume, Ephemeral Store,  Monitoring, Basic Networking, SSH, VPN &amp;amp; VPC. We will be using most  of them below to explain our solution. &amp;nbsp;Its not a must to know  everything but a general idea of what it is will be really helpful. As  always we can refer the repository of documentation at &lt;/span&gt;&lt;a href="http://aws.amazon.com/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;aws.amazon.com&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt; for some the above mentioned technology &amp;amp; keywords. If confused am at your service to clarify.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;base OS&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;For  any product to run successfully we need a base OS, a solid base OS  image that it can safely run and get critical OS &amp;amp; security updates  over a period of time (at least 2-3 years). &amp;nbsp;My personal recommendation  would be a Ubuntu 10.04 LTS which has 5 year support and would suffice  our need to start with. Of course we could choose Gentoo/CentOS/RHeL or  other alternate distribution based on specific needs that you have.  &amp;nbsp;Since we are looking at running production instance in AWS, it make  sense to have our root partition (aka ‘/’ ) in Elastic Block Store (aka &lt;/span&gt;&lt;a href="http://aws.amazon.com/ebs/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;EBS&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;).  &amp;nbsp;EBS allows us to have store data ranging from 1GB to 1TB and is re  sizable (yes you hears it right). EBS allows us to create volume of  various size and mount it to instance to be used a partition (say web  root of our Apache for example). EBS has a incredible feature to take  snapshot where in the snapshot taken are stored in &lt;/span&gt;&lt;a href="http://aws.amazon.com/s3/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;S3&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;  a highly reliable data store with 99.999% up time. In case of a crash  (which rarely happens), recovering would be few click away (or few lines  of script away). Initially we can start with taking a snapshot say  every midnight and as we push more and more changes we can increase the  frequency of snapshot. Remember when we take multiple snapshot of same  volume it only stores incremental changes and thus saves substantial  storage cost.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;2 ways of setting up LAMP&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;ol style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;LAMP&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;ul&gt;&lt;li style="list-style-type: disc;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  traditional way of setting up a LAMP is installing the require packages  from the OS repository which would involve setting up Apache, MySQL and  PHP. (reference: &lt;/span&gt;&lt;a href="https://help.ubuntu.com/community/ApacheMySQLPHP%29"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;https://help.ubuntu.com/community/ApacheMySQLPHP)&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;.  Here the entire stack remains in one instance. This mean you will have  to do the database tweaking and administration yourself apart from app  development.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;span style="font-family: 'Trebuchet MS', sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;ol start="2" style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: decimal; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;LA(M)P -&amp;gt; LA(&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: italic; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;RDS&lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;)P&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family: 'Trebuchet MS', sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;If  you see the above heading, i have replace ‘M’ with ‘RDS’. Amazon AWS  provides relational database capability as well, its called Relational  Database Services (aka &lt;/span&gt;&lt;a href="http://aws.amazon.com/rds/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;RDS&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;).  The advantage of using this is entire MySQL database administration  overhead of taken away from you and allows you to stay focused what you  really want to be doing, developing and improving your application  instead of database administration. I highly recommend going in for RDS  which takes care of our scaling issue as we attract more customers (and  data)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: 'Trebuchet MS', sans-serif; font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;Things to take care while setting up Apache/PHP&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;As  said earlier EBS allows you to scale from GB -&amp;gt; TB and is re  sizable. I recommend to create a EBS volume &amp;nbsp;(start with XGB based on  what is currently used) and attach this instance. Upon attaching a EBS  volume to a instance we can access it as a separate disk drive. Format  with ext{3,4} and mount it. Use the newly mounted partition as your  Apache Root folder. &amp;nbsp;This approach has multiple advantages as well.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;ul style="font-family: &amp;quot;Trebuchet MS&amp;quot;,sans-serif;"&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Separation of OS data vs application data&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;In case of crash, you can boot another instance and connect the volume to new instance, yes data in &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: italic; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;EBS is persistent &lt;/span&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;We can schedule more frequent snapshot for data volume.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;The  snapshots are stored in S3 (a highly reliable data store ) and is  replicated across multiple availability zone for higher redundancy, a  huge ++++ for us.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="background-color: transparent; color: black; font-style: normal; font-weight: normal; list-style-type: disc; text-decoration: none; vertical-align: baseline;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Creating a experimental setup with mock data is as simple as taking a snapshot of your vol and cloning it. &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-family: 'Trebuchet MS', sans-serif; font-size: small;"&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;A reason to smile, a little bit of cost saving here&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;By  default EBS volume snapshot are stored on to S3 and is replicated to  multiple availability zone. But in some case we might have loads of data  which are not critical but is generated at run time or during the  session. Here we could choose to use Reduced Redundancy Storage (aka &lt;/span&gt;&lt;a href="http://aws.amazon.com/s3/faqs/#What_is_RRS"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;RRS&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;).  So go ahead create a EBS volume, set the attribute to make it RRS,  attach to your instance and let all your transient data reside in this  new low cost volume/partition.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;how do we know if we should increase the instance size (RAM, CPU, IO, Network, etc..)&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;As  we have started our implementation with basic instance type which  matches our local hardware, we need to know if we are required to  increase the CPU,RAM, etc... This brings in &lt;/span&gt;&lt;a href="http://aws.amazon.com/cloudwatch/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;CloudWatch&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;  which allows us to monitor the instance very closly and take calculated  decisions. Based on the monitoring details we can choose more memory or  more cpu (more about instance type &lt;/span&gt;&lt;a href="http://aws.amazon.com/ec2/instance-types/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;). &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Update  from small to medium/large to give you users a better experience. Else  downgrade &amp;nbsp;from large to medium/small to save some bucks for your  company. &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What next ?? customer is king, let’s give him the best experience.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Now  that we have taken care of our basic need with respect to base OS,  database and storage. Now let’s looks at some other aspect w.r.t  reducing latency of the content that we serve users. Internet is  something which is consumed globally and need to serve the content (be  it images, video, etc.) to every user around the world becomes the next  challenges. Amazon AWS provide &lt;/span&gt;&lt;a href="http://aws.amazon.com/cloudfront/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;CloudFront&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;,  a web service for global content delivery with focus on reducing the  latency while serving any user any where in the world. Let your customer  reside anywhere in the world, CloudFront is there to lead from front. &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;faster, faster &amp;amp; faster …. but f-a-t-a-l error and system crashed !!! &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;In  the above section we saw that we have handled the Content Delivery part  of it, we started monitoring and know if load is high or not. Being a  start-up every user who is visiting us is a potential customer and he  leaving with a bad impression is the last thing to happen. What is you  server faulted and is down at the middle of night or while you were  travelling ? Wont it be nice to have another instance serving your  customer and make him happy ? &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Don't worry we have &lt;/span&gt;&lt;a href="http://aws.amazon.com/elasticloadbalancing/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;Elastic Load Balancer&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;.  The load balancing can kick in based on multiple parameter which are  configurable. For example in our case we want to make sure if a instance  is bad then route all the data to new instance. Elastic Load Balance  uses Cloud Watch behind the scene to get the stats of instance and act  upon it based on what we have configured. &amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;ok all well, now i have million of user at middle of night !!! &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Cool,  am happy to hear that more people are using your service, but sad to  know that you need to awake to check when to allocate more resource.  What if i give a option to do this dynamically ?? am sure your family  will be really to have you home at mid night. Here we have &lt;/span&gt;&lt;a href="http://aws.amazon.com/autoscaling/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;Auto Scaling&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;.  Again choice is left to you to decide when to scale up and when to  scale down based on parameters (like time of day, load, etc)&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;all is well, but how to achieve seamless working from my office and Amazon AWS&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Since  your office is gonna be connected to Amazon AWS network for managing  the instance, copying critical data, testing a new piece of code, etc...  you don't want every employee to connect separately to EC2 machines.  Also while transmitting critical data you don't want a network hacker  (or a competitor) stealing your critical data. To save you from all  these head aches of seamless and safer connection, AWS has &lt;/span&gt;&lt;a href="http://aws.amazon.com/vpc/"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;Virtual Private Cloud&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;  (aka VPC). This will make sure your IT infrastructure and Cloud is  connected via an encrypted VPN connection. Once your VPC is enabled and  configured your cloud is ready to serve you locally. Remember to tweak  you security group to enable/disable network connections. &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: bold; text-decoration: none; vertical-align: baseline;"&gt;What have we done so far, a quick glance:&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;Our goal is to get a robust, reliable, secure, scalable, on demand computing resources for the next &lt;/span&gt;&lt;a href="https://docs.google.com/document/d/1Sbd0bJtCTSZuB_CYXCMplhOlCTTrpP1A9kvJIZ8wyx0/edit?hl=en"&gt;&lt;span style="background-color: transparent; color: #000099; font-style: normal; font-weight: normal; text-decoration: underline; vertical-align: baseline;"&gt;.com&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;  that you are building on top of LAMP stack. With ec2 running Linux is a  click away. By choosing appropriate distribution (one which has Life  Time Support like Ubuntu, CentOS,RHeL, etc.) you can choose to stay  focused on you application development. By storing your ‘/’, ‘/data’ on  EBS make sure you have safe backup available in multiple availability  zone (powered by S3). By storing ‘/non_critical_data’ in EBS (with RRS)  we make sure we save money (reducing redundancy). With monitoring (Cloud  Watch) enabled you know what is you system doing and when w.r.t CPU,  IO, Network, Memory, etc .. Once you have become popular around the  globe, the Cloud Front (the content delivery network) make sure the  latency is reduced to minimum and as a result customer experiencing best  possible experience using your product. Just to make sure you sleep  well and stay focused, the elastic load balancing system keeps a tab on  faulty system and redirect traffic to new instance when required. Same  is the case when you have more users hitting your system, the Auto  Scaling does the magic behind the scene. Security group make sure that  you are safe in the Internet by allowing only needed protocol/ports to  public. Finally our VPC make sure that data is secure while your  employees connect from office to all aws resource (ec2 instance, etc..)  which make the machine in the Amazon AWS network transparent. &lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; color: black; font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline;"&gt;happy aws’ing &lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-889100026666472721?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/889100026666472721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/01/scaling-from-local-server-to-cloud.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/889100026666472721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/889100026666472721'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/01/scaling-from-local-server-to-cloud.html' title='Scaling from a local server to cloud using Amazon AWS'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3810162487324364203</id><published>2011-01-11T07:43:00.002+05:30</published><updated>2011-01-11T17:40:07.154+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='getting started'/><category scheme='http://www.blogger.com/atom/ns#' term='aws'/><title type='text'>Launch Amazon AWS, EC2 instance in singapore in less than 10 clicks</title><content type='html'>With launch of new region in Singapore, people in APAC get benefited by launching their instance close to their country (earlier we had only EU and US).&lt;br /&gt;&lt;br /&gt;In this blog post i will cover steps to launch a instance in less than 10 steps. &lt;br /&gt;&lt;br /&gt;Step1:&lt;br /&gt;Visit https://console.aws.amazon.com/ec2/home and login&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu7-IebnZI/AAAAAAAAVEE/3tZvGBLvblE/s1600/Screen+shot+2011-01-11+at+7.20.32+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="188" src="http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu7-IebnZI/AAAAAAAAVEE/3tZvGBLvblE/s320/Screen+shot+2011-01-11+at+7.20.32+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Step 2:&lt;br /&gt;Choose your region, in our case Asia Pacific&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu7_NdGM0I/AAAAAAAAVEI/lev2-cQq8dI/s1600/Screen+shot+2011-01-11+at+7.22.54+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="202" src="http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu7_NdGM0I/AAAAAAAAVEI/lev2-cQq8dI/s320/Screen+shot+2011-01-11+at+7.22.54+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Step 3:&lt;br /&gt;Decide which AMI to boot from. For those who are new to AMI, Visualize it as a OS template. For this example we will use an AMI listed in alestic.com&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_hCFFSV1kPs8/TSu7_3vJj_I/AAAAAAAAVEM/jdjjCeRcjA0/s1600/Screen+shot+2011-01-11+at+7.27.21+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="310" src="http://2.bp.blogspot.com/_hCFFSV1kPs8/TSu7_3vJj_I/AAAAAAAAVEM/jdjjCeRcjA0/s320/Screen+shot+2011-01-11+at+7.27.21+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Step 4:&lt;br /&gt;Create a Security Group (equivalent of firewall ;-) ). Let's just enable SSH at the minimum and if we are planning to expose http then port 80 as well.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_hCFFSV1kPs8/TSu8Bn1TYlI/AAAAAAAAVEQ/GITGveelE1I/s1600/Screen+shot+2011-01-11+at+7.29.59+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="127" src="http://4.bp.blogspot.com/_hCFFSV1kPs8/TSu8Bn1TYlI/AAAAAAAAVEQ/GITGveelE1I/s320/Screen+shot+2011-01-11+at+7.29.59+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Step 5:&lt;br /&gt;Create a key pair (The ssh connections to AMI is key based and hence this step). Store the key pair in your home folder (i created a ~/.ec2 folder to keep all ec2 stuff)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_hCFFSV1kPs8/TSu8CSgC-PI/AAAAAAAAVEU/UyDt1_mi1FQ/s1600/Screen+shot+2011-01-11+at+7.30.12+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="117" src="http://4.bp.blogspot.com/_hCFFSV1kPs8/TSu8CSgC-PI/AAAAAAAAVEU/UyDt1_mi1FQ/s320/Screen+shot+2011-01-11+at+7.30.12+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Step 6:&lt;br /&gt;Launch Instance (choose ami, instance type, security group, key pair) and finally fire it.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8Dfuuq-I/AAAAAAAAVEY/cjkVMXEJ9Qo/s1600/Screen+shot+2011-01-11+at+7.31.25+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="222" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8Dfuuq-I/AAAAAAAAVEY/cjkVMXEJ9Qo/s320/Screen+shot+2011-01-11+at+7.31.25+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8EBk0RrI/AAAAAAAAVEc/nxpJumEn3nw/s1600/Screen+shot+2011-01-11+at+7.31.55+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="227" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8EBk0RrI/AAAAAAAAVEc/nxpJumEn3nw/s320/Screen+shot+2011-01-11+at+7.31.55+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_hCFFSV1kPs8/TSu8EyOrrtI/AAAAAAAAVEg/SSulptmtK80/s1600/Screen+shot+2011-01-11+at+7.32.49+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="228" src="http://2.bp.blogspot.com/_hCFFSV1kPs8/TSu8EyOrrtI/AAAAAAAAVEg/SSulptmtK80/s320/Screen+shot+2011-01-11+at+7.32.49+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8Dfuuq-I/AAAAAAAAVEY/cjkVMXEJ9Qo/s1600/Screen+shot+2011-01-11+at+7.31.25+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Step 7:&lt;br /&gt;ssh to the machine and see if its working.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu8GhkRWvI/AAAAAAAAVEo/ZNhxbUXMCts/s1600/Screen+shot+2011-01-11+at+7.38.31+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="282" src="http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu8GhkRWvI/AAAAAAAAVEo/ZNhxbUXMCts/s320/Screen+shot+2011-01-11+at+7.38.31+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8UzDbFDI/AAAAAAAAVEs/DGIuFHzuM0s/s1600/Screen+shot+2011-01-11+at+7.40.46+AM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="236" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/TSu8UzDbFDI/AAAAAAAAVEs/DGIuFHzuM0s/s320/Screen+shot+2011-01-11+at+7.40.46+AM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In case if you are interested you can setup the command line API to connect to Amazon AWS (will cover this as a separate post)&lt;br /&gt;&lt;br /&gt;happy aws'ing&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3810162487324364203?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3810162487324364203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2011/01/launch-amazon-aws-in-singapore-in-less.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3810162487324364203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3810162487324364203'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2011/01/launch-amazon-aws-in-singapore-in-less.html' title='Launch Amazon AWS, EC2 instance in singapore in less than 10 clicks'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_hCFFSV1kPs8/TSu7-IebnZI/AAAAAAAAVEE/3tZvGBLvblE/s72-c/Screen+shot+2011-01-11+at+7.20.32+AM.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-471686276833767780</id><published>2010-12-19T09:21:00.001+05:30</published><updated>2010-12-19T09:21:22.130+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='tooth extraction'/><category scheme='http://www.blogger.com/atom/ns#' term='wisdom'/><category scheme='http://www.blogger.com/atom/ns#' term='pain'/><title type='text'>wisdom gone</title><content type='html'>After much comtemplation ( and pain ) i decided to get rid of wisdom tooth both the upper and lower. According to doctor its normally not used for chewing and can be safely removed. As always i was curious to know how ancient people managed to get rid of wisdom tooth. According to some of last generation people there used to be people who can pluck any tooth (not certified docs) and give you some ayurvedic medicine to heal and things will be alright in few days (oh yes there are cases where piece of teeth still remained inside ;) ). These days things have definetely improved with x-rays and locals which make sure that we do it right in a less painful way. &lt;br/&gt;  &lt;br/&gt; I got mine wisdom tooth removed on a wednesday. The x-ray showed that i have a straight root and it should be relatively easy to pull it out but it turned out to be a disaster (had to cut in pieces before taking it out). Also the doc had to cut the tissues around for a safe removal. Had stiched it to make sure that i heal faster.  &lt;br/&gt;  &lt;br/&gt; Day 0 night was crazy, i had to take injection for pain and antibiotic. Both on my left and right thigh. I managed to eat some thing, dont remember what but thanks to mom. Normally i sleep on a room in first floor (my parents in ground floor) and in the middle of night i had to come down for ice cubes (reduces swelling), my legs trembled and phat...i lay flat on ground. Immediately i got my conscience back and i could remember my enemies very well (took that as a sign that  nothing serious happened).  &lt;br/&gt;  &lt;br/&gt; Day 1 morning, i had developed severe neck pain and i assumed that it because of fall. Later i realized that it because of locals. Bleeding continued and was a vampire for entire day 1 (bleeding almost stopped end of day 1) &lt;br/&gt;  &lt;br/&gt; Day 2 could brush my teeth and felt a bit okay than previous days. Could even walk for few km (very slowly tho) &lt;br/&gt;  &lt;br/&gt; Day 3 am writing this blog &lt;br/&gt;  &lt;br/&gt; I continued to eat very well (grinded the food before eating) thanks to mom. Just after the medicine i dont go out or do things (feels giddy for almost an hour) and i gargle at least 3/4 times and occationally eat some ice cream if pain aggravates.  &lt;br/&gt;  &lt;br/&gt; Overall it painful, but hoping that my tomorrow is gonna be better.  &lt;br/&gt;  &lt;br/&gt; I know this is nothing to what other go thru in life when there is no medical support or any else to take care of them. When i read how Lance Armstrong recovered from cancer with mere 2% survival chance to winning tour de france this is jus nothing.  &lt;br/&gt;  &lt;br/&gt; Experience is great teacher and feeling greatful to all master/patriots/freedom fighters/soliders who were/is ready to sacrifice there happiness today for a better tomorrow.  &lt;br/&gt;  &lt;br/&gt; Oops too much gyan for today ! &lt;div style='clear: both; text-align: center; font-size: xx-small;'&gt;Published with Blogger-droid v1.6.5&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-471686276833767780?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/471686276833767780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/12/wisdom-gone.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/471686276833767780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/471686276833767780'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/12/wisdom-gone.html' title='wisdom gone'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7151022333770121745</id><published>2010-12-17T07:16:00.003+05:30</published><updated>2010-12-17T10:56:59.412+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='experience'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='lg evo'/><title type='text'>android looks super cool (especially bash aka terminal)</title><content type='html'>Its been a while i wanted to post a blog about android. I was hooked onto android from day one. A collegue of mine had a basic &lt;a href="http://www.lg-phones.org/how-to-flash-lg-eve-etna-gw620.html"&gt;LG GW620&lt;/a&gt; and he got himself upgraded (or may be downgraded) to a blackberry(may god bless him ;)). First impression of Droid 1.5 was not that great, its like just another phone with some interface. My goal was to get froyo up and after a bit of research i found few guys at openetna.com are actually building a free firmware to android 2.2-* for the phone that i have got. Got really excited and installed froyo (still keeps updating to latest RC* release every two weeks). Found some really really cools apps but all it matters to me is a shell, that's where i belong to ;) &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://lh4.ggpht.com/_hCFFSV1kPs8/TQrBCHzV0CI/AAAAAAAAVDM/aUK8THgmVW0/ScreenShot.jpg" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img src="http://lh4.ggpht.com/_hCFFSV1kPs8/TQrBCHzV0CI/AAAAAAAAVDM/aUK8THgmVW0/s400/ScreenShot.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;A screenshot of bash in adroid is attached. There are some basic apps that will make ur life simpler while using any droid phone. Like for example evernote for capturing any notes anywhere, a blogger client or google cli (helps u to post a blog from command line), google sync (comes as part of gapps package from google directly), sms back up+ (which backup all received sms and latest version it syncs call logs as well), this means all ur contact + sms + call logs are in safe hands (google god ;)). The other app which is must is titanium backup, the only app i paid some money (150/- indian rupee or $3) and really worth paying for. It has a cool feature to backup to dropbox (2gb free and if u r smart u can get upto 8gb free).  &lt;br /&gt;&lt;br /&gt;If you are planning to buy a phone and get it updated like the way i have done with openenta (or any other firmware) be ready with a standby phone and a new sim card, so that ur exisiting sim can be used in the spare phone and the temporary sim can be used in android phone till u set it up completely (i got a temporary uninor 6gb data plan and got everything tested before i started using my actual sim). Also be ready to go thru some hardship of reading, reading and reading some android forums post in case if you are stuck. The best part is android community in general r()cks.  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="clear: both; font-size: xx-small; text-align: center;"&gt;Published with Blogger-droid v1.6.5&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7151022333770121745?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7151022333770121745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/12/adroid-looks-super-cool-especially-bash.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7151022333770121745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7151022333770121745'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/12/adroid-looks-super-cool-especially-bash.html' title='android looks super cool (especially bash aka terminal)'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_hCFFSV1kPs8/TQrBCHzV0CI/AAAAAAAAVDM/aUK8THgmVW0/s72-c/ScreenShot.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3889442979698128028</id><published>2010-12-13T12:04:00.000+05:30</published><updated>2010-12-13T12:04:23.111+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='social'/><category scheme='http://www.blogger.com/atom/ns#' term='announcement'/><category scheme='http://www.blogger.com/atom/ns#' term='OpenLinuxBook'/><title type='text'>Announcing - OpenLinuxBook Project</title><content type='html'>Its been a little frustrating to see that there is lack of trust worthy documentation for Linux. There are many sites which has tons of documentation but is not very well maintained (and is not the latest) and joining the volunteer committee is not that easy (separate registration, approval from board, etc). Born out of desire to start a documentation project or rather a single source of truth for Linux documentation. A documentation which covers the depth and breadth of Linux with latest and greatest technical details for begineers, intermediates and advances users. That means that we might write something refer from existing documentation projects and soon. &lt;br /&gt;&lt;br /&gt;The are few things i want to achieve: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Use existing infrastructure like Google docs or something similar where people can collaborate easily and work together with a single standard tool chain.&amp;nbsp; (with zero or no approval cycle)&lt;/li&gt;&lt;li&gt;There are loads of awesome documentation scattered around, need to figure out a way to scrape it and make it part of the this documentation. &lt;/li&gt;&lt;li&gt;Should be easy to includes mindmaps and other visual charts (i suppose gdocs has some support for these already)&lt;/li&gt;&lt;li&gt; A comprehensive documentation which can be source of reference for beginners and experts (build the required gdocs to support feature we want) &lt;/li&gt;&lt;li&gt;Zero administrative maintenance/support (like for example the domain name, ftp, etc). Use as much as public domain tools (say like facebook for communication, drobbox public folder for sharing, gdocs for sharing/writing documents, etc).&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;This is born out of a personal desire, i need to figure out way (irc, forums, posters, facebook page) to  contact/interact people and evole the mission and goals for this project. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What to expect next:&lt;br /&gt;I will perhaps put together a campaign which we can announce in multiple Linux forums and get some feedback. If you are reading this and going thru a similar thought feel free to drop in a &lt;a href="mailto:gnuyoga%20%at%%20gmail%20#dot#%20com"&gt;email&lt;/a&gt; to me, perhaps u can be the first to volunteer.&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3889442979698128028?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3889442979698128028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/12/announcing-openlinuxbook-project.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3889442979698128028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3889442979698128028'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/12/announcing-openlinuxbook-project.html' title='Announcing - OpenLinuxBook Project'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2149448923196264098</id><published>2010-12-03T13:35:00.001+05:30</published><updated>2010-12-03T17:06:39.399+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='package'/><category scheme='http://www.blogger.com/atom/ns#' term='packagmanagement'/><title type='text'>A sneak peak - Package Management Systems</title><content type='html'>The first and foremost aspect of a software development process is deciding on what user wants, then get it implemented using some programming language and final stage is to make it available to consumer or customer. In the world of web its either a website or web service api which user access. But behind the scene there are tons of work involved to make sure user see the latest and greatest version (in certain cases latest and most stable version of software;-) ).&lt;br /&gt;&lt;ol&gt;&lt;li&gt;(An) Idea&lt;/li&gt;&lt;li&gt;Implement (the Idea, ofcourse using a programming language of ur choice ;-)) &lt;/li&gt;&lt;li&gt;Test/Validate/etc (exception if you are a awesome coder)&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;Package&lt;/b&gt;&lt;/i&gt; (or bundle) It (3 and 4 could be interchanged and depended on organization)&lt;/li&gt;&lt;li&gt;Take the packaged software to server or customer box and &lt;i&gt;&lt;b&gt;install&lt;/b&gt;&lt;/i&gt; it&amp;nbsp; (push it in package repository)&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;Provision&lt;/b&gt;&lt;/i&gt; the installed package (take the package from repo and untar it ;-) and apply system wide configuration changes)&lt;/li&gt;&lt;li&gt;back to step 2, with additional inputs to improve the software (add a beta tag, because this never stops, iterative development)&lt;/li&gt;&lt;li&gt;push it to &lt;i&gt;&lt;b&gt;update&lt;/b&gt;&lt;/i&gt; server&lt;/li&gt;&lt;li&gt;continue to use it or &lt;i&gt;&lt;b&gt;delete&lt;/b&gt;&lt;/i&gt; it&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;The 3 main activities we are focused here are Packaging or Bundling, Installation, Provisioning the already installed package, Upgrading existing installed software and finally deleting the package either from locally installed machine or from the software repository itself.&lt;br /&gt;&lt;br /&gt;Some time the best (may be crude) approach is tar it (or zip it) and untar or unzip w.r.t particular directory (tar -C in Linux) and untar/unzip in destination host. This would be most primitive approach and could work clean in some scenarios. Other simpler approach is using a rsync from you pre-production environment to production environment. All the above mentioned steps has some dis advantages when it comes to large scale systems (more than 100+ servers), w.r.t loosing track what is installed, upgrading OS, selective update, etc... &lt;br /&gt;&lt;br /&gt;A good packaging system will help us get the following:&lt;br /&gt;&lt;ol&gt;&lt;li&gt; Name of the package Installed&lt;/li&gt;&lt;li&gt;A brief description of what is suppose to do&lt;/li&gt;&lt;li&gt;A version number identifier (some companies obfuscate this ;-) )&lt;/li&gt;&lt;li&gt;Checksum, to avoid over the network tamppering&amp;nbsp;&lt;/li&gt;&lt;li&gt;List of other dependent packages&amp;nbsp;&lt;/li&gt;&lt;li&gt;After installation, the details of packages are normally kept in a local package database&lt;/li&gt;&lt;/ol&gt;What does a package management brings it a Operating System ?&lt;br /&gt;Its help maintain things independently and co-evolve different components/libraries of Operating System, otherwise would have become a single monolithic design in nature.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lifecycle of Package Management System:&lt;br /&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://upload.wikimedia.org/wikipedia/commons/thumb/2/22/Pms.svg/500px-Pms.svg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="210" src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/22/Pms.svg/500px-Pms.svg.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In general, it will great to have the following principles as foundation principle for any package management system:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Install &amp;amp; Deletion of package has to be first functionality ;-) &lt;/li&gt;&lt;li&gt;Verification of a already implemented package has to be smooth, an verification of source of packages also will be good to implement&lt;/li&gt;&lt;li&gt;Package builder is the king, me it simpler for him. If he is not happy we will not have packages generated ;-) &lt;/li&gt;&lt;li&gt;Let the package builder refer to original source (otherwise can become a hell managing it)&lt;/li&gt;&lt;li&gt;Make sure that the core package manager system works in multiple architecture, this means the package format can be safely built and used in multiple arch (no relearning of tools for different arch)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2149448923196264098?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2149448923196264098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/12/sneak-peak-package-management-systems.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2149448923196264098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2149448923196264098'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/12/sneak-peak-package-management-systems.html' title='A sneak peak - Package Management Systems'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7789126019443856839</id><published>2010-12-03T11:48:00.000+05:30</published><updated>2010-12-03T11:48:47.636+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='provision'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='cobbler'/><category scheme='http://www.blogger.com/atom/ns#' term='provisioning'/><title type='text'>Provisioning Systems in Linux</title><content type='html'>According to wikipedia, &lt;b&gt;provisioning&lt;/b&gt; is the process of preparing and equipping a network to allow it to provide (new) services to its users.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you are one of the developer, who's life revolves around amazon ec2 servers (or any cloud services) for production, development, testing then you have used provisioning systems already. When we issue, &lt;i&gt;ec2-start-instance &lt;ami-id&gt;&lt;/ami-id&gt;&lt;/i&gt;, the system working behind this command is a provisioning system. The ami-id is a unique identifier which is mapped to a specific template which has instruction to boot specific version of kernel, network, OS, etc...&lt;br /&gt;&lt;br /&gt;In a physical machine after the BIOS POST it will start &lt;a href="http://en.wikipedia.org/wiki/Preboot_Execution_Environment"&gt;PXE&lt;/a&gt; and gets itself a IP address. Making use of various protocols like &lt;i&gt;tftp&lt;/i&gt; it gets an Operating System image (Windows, Linux, Solaris, etc) and boots the kernel (which initializes the rest of the System).&lt;br /&gt;&lt;br /&gt;In a virtual environment, the user (or web services api in amazon ec2) request the &lt;a href="http://en.wikipedia.org/wiki/Xen#Host:_Unix-like_systems"&gt;host operating system&lt;/a&gt; to provision the guest machine.&lt;br /&gt;&lt;br /&gt;In theory provisioning systems are nothing but templates (or pre configured machine instructions) that a machine will execute while booting up (or during power on). In traditional system where we have a physical machine next to you and if you have a installation CD in hands things were easy, mount the CD and fire install and few minutes later you configuration screen pops up and you create users, set network, login, etc ... Now with Cloud Computing (aka On demand) people have figured out way's to automate things so that we dont have the repeat the same thing again and again while installing or configuration 1000+ of systems (imagine installing 1000+ servers using CD, its a nightmare, less productive and cannot scale up). From the age old days we had kickstart (&lt;i&gt;find /root -name 'ks.cfg'&lt;/i&gt;) from redhat which anaconda installed used to provision multiple systems with same configuration.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;With changes in way OS is deployed the need to have centrally managed easily configurable and which is extend able evolved over a period is the need of hour. (especially when we have On demand system based on XEN and other Virtualization technologies)&lt;br /&gt;&lt;br /&gt;The beauty of Open Source/Free Software is that you think about it and by the time you have finished thinking someone else has already executed it ;-)&lt;br /&gt;&lt;br /&gt;Secret (or sacred ;-) ) weapon for doing provision is Cobbler (i dont want to getting into a fight of which is better one, feel free to &lt;a href="http://www.cyberciti.biz/tips/server-provisioning-software.html"&gt;choose&lt;/a&gt; what works for you)&lt;br /&gt;&lt;br /&gt;So has cobbler reinvented the wheel, according to me &lt;i&gt;no&lt;/i&gt; because it does follow the famous unix principle, "&lt;i&gt;get simpler tools work together&lt;/i&gt;" (&lt;i&gt;eg: ls -l | grep name &lt;/i&gt;where ls, grep does it job and pipe connects it both). As a whole its a complete Provisioning Application with its api exposed as web services.&lt;br /&gt;&lt;br /&gt;The bigger picture (&lt;i&gt;than me writing the all the nuts and bolts&lt;/i&gt;)&lt;br /&gt;&amp;nbsp;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.iaza.com/work/101203C/iaza15352493895900.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="276" src="http://www.iaza.com/work/101203C/iaza15352493895900.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;One feature which i personally like is installation over SSH, especially useful for distributions like gentoo where we build things from scratch. Its also provides a neat built-in configuration management tool or can be used alon side with puppet. Some of the power feature Cobbler come with are&lt;br /&gt;Power Features: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Non program can get started easily using cheetah templates, http://www.cheetahtemplate.org/ &lt;/li&gt;&lt;li&gt;reusing common blocks using snippets, https://fedorahosted.org/cobbler/wiki/KickstartSnippets&lt;/li&gt;&lt;li&gt;Yum Mirroring&lt;/li&gt;&lt;li&gt;Advanced Networking Configuration -- bonding, vlans &lt;/li&gt;&lt;li&gt;DHCP Management&lt;/li&gt;&lt;li&gt;DNS Management&lt;/li&gt;&lt;li&gt;Power Management&lt;/li&gt;&lt;li&gt;Configuration Management Hooks (puppet), u can choose built in conf management as well&lt;/li&gt;&lt;li&gt;BIOS/Firmware upgrades (ex: Dell, HP), personally i have not used it &lt;/li&gt;&lt;li&gt;Remotely erase machines (DBAN), http://www.dban.org/ &lt;/li&gt;&lt;li&gt;Extensive anaconda monitoring features, really helpful to see the remote logs, https://fedorahosted.org/cobbler/wiki/AnaMon &lt;/li&gt;&lt;li&gt;Multi-server replication, for redundancy and high availability. Will be handy if you want to expand to other geography.&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;Worth taking a look at &lt;a href="https://fedorahosted.org/cobbler/"&gt;Cobbler&lt;/a&gt;, try it out in your next project and drop in your feedback.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;reference&lt;/i&gt;&lt;br /&gt;http://mdehaan.fedorapeople.org/presentations/cobbler/index.html#%2812%29&lt;br /&gt;https://fedorahosted.org/cobbler/&lt;br /&gt;https://fedorahosted.org/cobbler/wiki/UserDocs&lt;br /&gt;&lt;br /&gt;&lt;i&gt;mailing list&lt;/i&gt;&lt;br /&gt;https://fedorahosted.org/mailman/listinfo/cobbler&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;irc&lt;/i&gt;&lt;br /&gt;#cobbler and #cobbler-devel in irc.freenode.net&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7789126019443856839?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7789126019443856839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/12/provisioning-systems-in-linux.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7789126019443856839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7789126019443856839'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/12/provisioning-systems-in-linux.html' title='Provisioning Systems in Linux'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7784568033524847903</id><published>2010-11-03T12:55:00.000+05:30</published><updated>2010-11-03T12:55:05.703+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='contyclub'/><category scheme='http://www.blogger.com/atom/ns#' term='photoshoot'/><title type='text'></title><content type='html'>A good friend happened to invite me to take pictures of Conty Club, India meet. Although I knew these guys were meeting the second time in a row, I didn’t quite expect this level of maturity from a start up club.&lt;br /&gt;&lt;br /&gt;To start with the entry formalities were so well orchestrated and so was the parking at the venue. The assembly area was sanitised by the army for Conty Club members. As the Conty’s rolled in, the other formalities were done and CCI was playing fantastic host. Getting members to know each other and their cars and looking inside out of each other cars was the norm of the hour.&lt;br /&gt;&lt;br /&gt;Soon after the 10th car arrived, members were requested to proceed to have their refreshments. The refreshments itself was a brilliant arrangement and the army had set up the spread with such opulence, that it seemed more like a small wedding reception. Although there wasn’t a huge breakfast spread at you disposal, the stuff was substantial for a brunch. The military chai still lingers in my taste buds.&lt;br /&gt;&lt;br /&gt;The photo sessions went on with members &amp;amp; families including children simply having a good time with 19 Conty’s in one place plus the sun playing hide and seek with a gentle drizzle to add to the aura of the event.&lt;br /&gt;&lt;br /&gt;Everything was with clock work precision. A small talk by the hosts about the meet, the philosophy of the club in bringing people together for a purpose, the love of the car and members sharing their experiences with loads of laughter, fun and frolic.&lt;br /&gt;&lt;br /&gt;The cars were finally flagged off by a senior army official and split in different directions to avoid disruptions to normal traffic from a big convoy and prevent inconvenience to other road users. Again a very thoughtful gesture by CCI.&lt;br /&gt;&lt;br /&gt;The team regroup at Residency road parking with all the 19 cars for a round of chilled Red Bull and was greeted by the Scooter club making a cheerful pass, also by some of CCI’s friends from the Fiat Club. The cars were parked for public viewing and again an instant hit. The teams dispersed on time and the Sunday couldn’t have been spent in a better way.&lt;br /&gt;&lt;br /&gt;I thoroughly enjoyed my time at the CCI meet and have volunteered to take pictures of the next meet also as their official photographer. The show they put up was simply awesome. This is by far the best car or auto meet by a group/club I have ever been to.&lt;br /&gt;&lt;br /&gt;Some pics here&lt;br /&gt;&lt;br /&gt;&lt;table style="width: 194px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center" style="background: url(http://picasaweb.google.com/s/c/transparent_album_background.gif) no-repeat left; height: 194px;"&gt;&lt;a href="http://picasaweb.google.com/gnuyoga/ContyClub_Meet?feat=embedwebsite"&gt;&lt;img height="160" src="http://lh4.ggpht.com/_hCFFSV1kPs8/TNEOI7IgwLE/AAAAAAAAU68/q9_rCy6ffyk/s160-c/ContyClub_Meet.jpg" style="margin: 1px 0 0 4px;" width="160" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family: arial,sans-serif; font-size: 11px; text-align: center;"&gt;&lt;a href="http://picasaweb.google.com/gnuyoga/ContyClub_Meet?feat=embedwebsite" style="color: #4d4d4d; font-weight: bold; text-decoration: none;"&gt;ContyClub_Meet&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7784568033524847903?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7784568033524847903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/11/good-friend-happened-to-invite-me-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7784568033524847903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7784568033524847903'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/11/good-friend-happened-to-invite-me-to.html' title=''/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_hCFFSV1kPs8/TNEOI7IgwLE/AAAAAAAAU68/q9_rCy6ffyk/s72-c/ContyClub_Meet.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5323397501186361498</id><published>2010-10-29T12:25:00.002+05:30</published><updated>2010-10-31T07:15:11.305+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='history'/><category scheme='http://www.blogger.com/atom/ns#' term='career'/><title type='text'>from the initial days of my career</title><content type='html'>&lt;style&gt;@font-face {  font-family: "Cambria";}p.MsoNormal, li.MsoNormal, div.MsoNormal { margin: 0in 0in 0.0001pt; font-size: 12pt; font-family: "Times New Roman"; }div.Section1 { page: Section1; }&lt;/style&gt;     &lt;div class="MsoNormal"&gt;When am writing this am remembering the days of Richard Stallman visit to a small town, Kerala (in Southern Part of India) where he ended up interacting with all of us about the work of Linux (no Linux its GNU/Linux ;-)) and how important is to have a freedom in software. This triggered something in some of us (in my Computer Science batch mates) we ended up looking at how to starting using Linux and eventually is a contributor to the whole cause. The&amp;nbsp;Internet was still in &amp;lt; 128kbps and downloading something would have been a nightmare. Instead we started looking at if there is Linux distribution available as CD format (DVD was not even heard or was extremely expensive). We managed to get a copy of Red Hat4/5 (this is not RHEL 4/5 ;-)) &lt;br /&gt;&lt;br /&gt;I still love the redhat logo ;-)&lt;br /&gt;&lt;br /&gt;There was a lot of excitement about having a Linux cd in hand and curiosity to install it and get it working. Our first goal was to get a Linux server up and replace novell terminal with Linux dumb terminal. Am sure there days people don't even require to think of dump terminal (thanks to Intel which has made commodity pc cheaper) and advancement in tcp which has led to developments like Terminal Server Project (LTSP). First time in our life we managed to get a server class machine from our lab and started tinkering around (there was strict instruction to not to ruin it) and guess what ... our server broke (missing hard disk driver and boot loader corrupted). For the first time this was a big thing as we had no exposure to how to handle a broken device driver (later in life we realized only by breaking systems we can assemble it again and learn more about it). With few weeks/months of struggle (remember Google search was not possible in labs), using all the man pages we managed to get boot loader up and having a running system up (we had learned a lot by this time about hard disk, storage, file system, Unix pipes, sockets, Ethernet, tcp, etc.) Next challenge was to get dumb terminal up with 8 clients connected (yes this was a great challenge at that time ;-)) BTW dumb terminal is still popular in railway reservation counters and works awesome for them (dump terminal has just few bytes of data getting exchanged with server and hence consumes less bandwidth). Again with few weeks of struggle we compiled our first driver and got it up and running &lt;br /&gt;reference: http://www.techfuels.com/attachments/everything-else/9510d1230371605-dumb-terminals-dumb-terminals.jpg&lt;br /&gt;The whole exercise of playing around with Linux was a great exercise and we ended up owning the entire college lab and became unofficial bosses in the college ;-) &lt;br /&gt;&lt;br /&gt;During this time i started playing around with serial ports and started doing some electronic stuffs as well and this ended up becoming another project called "home automation system" which aims at connecting all the electrical devices like fan, air condition, TV, etc .. to the serial port using a relay switch and controlling the entire electrical appliance thru a web based application. We (along with another batch mate) managed to grab some price for these in inter college events. By this time a family friend approached to help him build a program for a game show (http://en.wikipedia.org/wiki/Kaun_Banega_Crorepati) and we applied some of the techniques we learned in home automation projects&amp;nbsp; (all device are connected using serial port) and game itself is built using ncurses. &lt;br /&gt;&lt;br /&gt;Being part of all these projects i got used to participating in inter/intra college competition (and great way to escape sometime boring class room ;-)). &lt;br /&gt;&lt;br /&gt;With god's grace even though i was more of a practical oriented person than theoretical i still managed to pass the exams with about 74% (yes definitely great achievement considering that fact that i don't open my theory much) &lt;br /&gt;&lt;br /&gt;With all excitements of doing stuff in college we go to know that there are no placement for the year am going to pass out (first time i heard the worst recession). In spite of this some got thru in service industry which i did not want to join (call it ego or something i had interest in building products, but when started i had no clue if i will end up anywhere). &lt;br /&gt;&lt;br /&gt;During this time i player around Linux From Scratch (aka LFS) and wrote few how to for some Linux online magazine as well, power up to bash prompt being my favorite till today. It’s an interesting article on what happens when we start the pc and how do we land up in a bash prompt. &lt;br /&gt;&lt;br /&gt;This interest got me talking to few people in industry who was waiting to do stuffs around Linux. I started my internship as a research assistant in a Linux lab (newly setup) and had lot of freedom to do thing i like and meet customers. One such customer interaction, it ended up with me making a product over night. Yes i did my first commercial project ;-) This was a storage server with some web interfaces to store and retrieve digital content targeted at library (be it college, university, etc.) The product had good market acceptance. Looking at the way i interact with customers my mentor in company decided to move to sales and it was a disaster. I always wanted a hand's on + customer interaction + product centric company. This is when i do the best. I was forced to looking for something, which is close to above definition. This opened up a new opportunity of working with a startup and i ended up joining few folks who was dreaming about build a Network Gateway based on commodity hardware and Linux. The idea spurted from this: many small to medium business are growing and is in need to IT services like email, fax for communication, vpn for connecting to office lan, firewall for protection, bandwidth monitoring &amp;amp; sharing for better utilization of internet&amp;nbsp;and finally for productivity some content filtering. The idea was to have a hardware appliance which is plug-and-play and all u need is an Internet connection and you are ready to go with all services up. I started as module developer and ended up owning the entire appliance stack. I was instrumental in getting the first couple of version out. Looking back there are few interesting stats about the product, it had about more than 70+ independent component some of them in java, c, python, etc. each of them had to packaged and life cycle need to be managed. Here is when i learned more about Linux package management and other Linux internal stuffs. Most the learning was derived based on some of the challenges we face while bundling or while deployed at customer. I still remember the excitement of our first customer deployment and we realized that we don’t have support for PPPoE and customer wanted this support at any cost else he will not buy the appliance. This introduced challenge of pushing packages to customer and we evolved a custom update manager around rpm. As you know in startup we end up doing everything even if the title doesn't match ;-) Starting from making tea for my teammates to meeting a customer for requirements. Here i realized my core skill is Idea to Execution, Challenges to Solutions, Designing to Implementing, Coding to release.&lt;br /&gt;&lt;br /&gt;Great learning i had here and got to know great deal of stuffs like build a product, engaging a customer, working with open source community, learning a new tool, identifying a challenge and what not. There was also a motivating factor the team that i work with. We had a great rapo with each one and we worked as one family that was a source of satisfaction. &lt;br /&gt;&lt;br /&gt;During the year 2008 is when i moved out from this setup and i was in a sabbatical. Many times we need to step back and contemplate on what we are doing&amp;nbsp;else we miss loads of things in life. Deep down i was a very inclined to spirituality and wanted to become a monk, wandered many place with a camera in hand exploring new things, people and each and everything in the world outside computer (after college and after 6+ years). My wanting to become a monk as of now is shelved for other reason (which i will write another blog) and i took some consulting to keep me floating in the world. Before leaving last company i had used XEN, OpenVZ and had few ideas around container based deployment. I was lucky to get a customer who had similar ideas and i helped him in few things before realized Amazon has this beautiful cloud stack (the aws platform). This is the same time i started interacting with an open source community that was working to build an open erp stack. In theory i had no interest in ere but had a desire to help this community do the right things to build the product and it was good opportunity for me to understand outside India developer community. We ended up working with more than one community while working for openbravo. We worked extensively with ubuntu, Hudson developer community. &lt;br /&gt;&lt;br /&gt;After sting with all the above I realized I need make some saving which will eventually help me retire earlier in my career (I know its a dream of most of us working in IT), i joined a multinational in Bangalore and i could not adjust in a non-Linux world (i realized that am overly obsessed with the entire Linux fraternity ;-)), i joined another MNC which is BSD centric as of now but moving towards Linux and rest is yet to unveil in the coming days ... &lt;br /&gt;&lt;br /&gt;(recording this as this will become a source of reference some time in my career)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5323397501186361498?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5323397501186361498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/10/from-initial-days-of-my-career.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5323397501186361498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5323397501186361498'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/10/from-initial-days-of-my-career.html' title='from the initial days of my career'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1571829485697198722</id><published>2010-10-19T19:22:00.000+05:30</published><updated>2010-10-19T19:22:29.699+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='packaging'/><category scheme='http://www.blogger.com/atom/ns#' term='change management'/><category scheme='http://www.blogger.com/atom/ns#' term='versioning'/><title type='text'>a thought on file  system versioning vs package version</title><content type='html'>Most of us who working in the development team (especially if its agile) deals with challenge of pushing the changes to production as soon as possible. Normal steps that we follow is auto package building (either a rpm, deb or tgz) through a Continuous Integration (aka CI) and increment major/minor number based on changes that goes in. This make sense for a binary program (like programs written in c, java), but think about interpreted languages like php, python, perl, etc. Also in a agile environment we don't have a big bang release, we release it fast and often which means that we have small incremental code changes (in case of interpreted language its just some text changes) hence avoding over head &lt;br /&gt;&lt;br /&gt;The alternate approach would be to use the version control available in the file system (yes it means we need a layer on top of Virtual File System [aka VFS]) or use Volume Snapshots. So here instead of building the package and managing version, we can take a snapshot of file system (amazon ec2 has api) rsync the new file/dir. There are few thing to keep in mind, we need to manage the life cycle of OS separate (personally i like gentoo way of building the OS base)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1571829485697198722?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1571829485697198722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/10/thought-on-file-system-versioning-vs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1571829485697198722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1571829485697198722'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/10/thought-on-file-system-versioning-vs.html' title='a thought on file  system versioning vs package version'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-755425496633273024</id><published>2010-09-24T09:38:00.002+05:30</published><updated>2010-12-15T12:55:21.589+05:30</updated><title type='text'>Control Tier, Puppet, cfengine, chef</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;(Still work in progress)&lt;br /&gt;&lt;br /&gt;Loads of innovation around One Click deployment. Change in software&amp;nbsp; is at extremely rapid pace and need to deploy to production as soon as its developed becomes a need rather than a requirement. In this blog i would like to demystify what can each component do and what need to improve in each of these component that will make really simpler for all. I have been closely watching most of these tools and i thought its time to list down what is what and who can do what. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With fast changing development environment, agile is the way to go. Which also means our tools also need to be agile. Now being agile may not be enough it should be stable enough so that production is actually serving the customer needs. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you are wondering why am i talking all these, high chance that you are either a developer or qe who perhaps have no clue what it make to run production server 24x7 ;-) just kidding... &lt;br /&gt;&lt;br /&gt;Let's look at what happens when we have a change request. First thing first is make necessary change in source code and commit the code along with bug/feature request number, as described below.&lt;br /&gt;&lt;br /&gt;Normally in large scale deployment we have multiple environment that need attention. Starting with Dev environment, QA environment, Pre-Production or Stagging Environment and finally the Production. Each might vary inters of packages installed, system configuration (eg: A component running QA box will be testing against a QA servers), etc.. Imagine the complexity of updating each of these environment separately after every code change, its a night mare !!!&lt;br /&gt;&lt;br /&gt;The whole idea of introducing these tools are to simply the time to production deployment by using the right tools for the right kind of job.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Control Tier is better explained thru a picture: &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://controltier.org/mediawiki/images/5/54/Problem_Big_ReallyBig.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.iaza.com/work/101215C/iaza15352441079100.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="110" src="http://www.iaza.com/work/101215C/iaza15352441079100.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://controltier.org/mediawiki/images/5/54/Problem_Big_ReallyBig.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In&amp;nbsp; linux sudo there is a famous joke (picture below):&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://laughingsquid.com/wp-content/uploads/sudo-sandwich.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="165" src="http://laughingsquid.com/wp-content/uploads/sudo-sandwich.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;sudo grants &lt;b&gt;you&lt;/b&gt; the permission to do what you want, in the case of ControlTier it takes charge and executes things for you (as described in the picture), while control tier does the heavy lifting you can relax:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.iaza.com/work/101215C/iaza15352484925300.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://www.iaza.com/work/101215C/iaza15352484925300.gif" width="209" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://controltier.org/mediawiki/images/6/68/Problem_BeforeAndAfter.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;Yes the next question is we can do the same with custom scripts, yes that's possible. Here ControlTier goal is to take out some of the standard problem into the framework so that you can focus on what's you core business. If you are system administrator you can start start relaxing more and more and let framework do the work for you (dont share this secret with you manager ;-) )&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;references:&lt;br /&gt;&lt;a href="http://github.com/reductivelabs/puppet"&gt;Puppet source code&lt;/a&gt;, &lt;a href="http://docs.puppetlabs.com/guides/introduction.html"&gt;Puppet Documentation&lt;/a&gt;&lt;br /&gt;&lt;a href="http://controltier.org/wiki/ControlTier"&gt;Control Tier Wiki, &lt;/a&gt;&lt;a href="http://controltier.org/wiki/Community"&gt;Control Tier Community&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-755425496633273024?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/755425496633273024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/09/control-tier-puppet-cfengine-chef.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/755425496633273024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/755425496633273024'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/09/control-tier-puppet-cfengine-chef.html' title='Control Tier, Puppet, cfengine, chef'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6949305251931115763</id><published>2010-09-20T07:33:00.000+05:30</published><updated>2010-09-20T07:33:13.699+05:30</updated><title type='text'>areas to focus on in career</title><content type='html'>During the osidays, couple of us discussed what are the opportunities for a professional/student especially in FOSS (in India). It turns out that there are multiple way to approach this, i will try to recollect and list few of them (this is not the only way but some of us found this approach working, including me)&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Identify a Open Source Project (say in sf.net, code.google, github, apache.org, apache incubator, etc) join the project mailing list/forum/irc. Some projects are very active in mailing list some are in forums and some in irc. (Make sure you read the list netiquettes before hand ;-) ) To start with help the project in what ever way you want be it coding, testing (smoke, functional), integrating (apply continuous integration), releasing (in multiple distro), packing (say for rpm, deb), security (use code scanners, vulnerability assessment&amp;nbsp; tools),&amp;nbsp; etc. Here the idea is make a contribution in the project you like to work with and also remember to leave a mark in your blog or in your resume.&amp;nbsp;&lt;/li&gt;&lt;li&gt;The other approach is getting started with local lug/foss groups. Start assisting folks in the group with what ever projects. The advantage here is there will be someone to mentor (this could be the disadvantage also ;-) ) Learn the trade techniques from your mentor. Target for upcoming events like GSoC and apply or it. This is a good motivator (as google pay u money for the work you are doing).&lt;/li&gt;&lt;/ul&gt;It so happens that when we join a work we might end up owning a small little piece of the whole software stack and we take care of some of the following aspects like Coding (this is active code development), Testing (make sure it work fine in all situation), Security (protected from vulnerability), System Administration (providing a 24x7 support), Release Engineering (Making sure what you commit goes out to production ASAP), etc ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Its important to build the domain knowledge over a period of time. Use internet as a means to learn and also sharing with fellow folks. Blog it for you own reference (help internalize stuff and make you a better spokes person). Talk it out during meetings/conferences and remember to smile and have fun !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6949305251931115763?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6949305251931115763/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/09/areas-to-focus-on-in-career.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6949305251931115763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6949305251931115763'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/09/areas-to-focus-on-in-career.html' title='areas to focus on in career'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1478684486110041250</id><published>2010-09-19T21:22:00.000+05:30</published><updated>2010-09-19T21:22:54.340+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ci'/><category scheme='http://www.blogger.com/atom/ns#' term='gettingstarted'/><category scheme='http://www.blogger.com/atom/ns#' term='hudson'/><title type='text'>hudson, hudson plugin, java -jar hudson.war, see the logs</title><content type='html'>I been wanting to write about hudson from a long time. Day1 of osidays.com is over. Participated in a panel discussion "FOSS jobs in India, opportunities galore". Since i have time now i thought i will write about hudson a bit. There are detailed articles, blogs already available. This will just one more ;-)&lt;br /&gt;&lt;br /&gt;For those who have not heard about &lt;a href="http://hudson-ci.org/"&gt;hudson&lt;/a&gt;, its a &lt;a href="http://www.martinfowler.com/articles/continuousIntegration.html"&gt;Continuous Integration&lt;/a&gt; (aka CI) tool, initially developed by &lt;a href="mailto:kohsuke@infradna.com"&gt;kohsuke&lt;/a&gt;. The beauty of this marvelous software is it plug-in architecture. Tons and tons of &lt;a href="http://wiki.hudson-ci.org/display/HUDSON/Plugins/"&gt;plug-ins&lt;/a&gt; to choose from. And the hudson core itself is release every two weeks, which means feature/security fixes are faster. hudson source code is &lt;a href="http://github.com/kohsuke/hudson/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Getting started is pretty easy with hudson:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;fire up you terminal (xterm, gnome-terminal or terminal in mac)&lt;/li&gt;&lt;li&gt;download the &lt;a href="http://download.hudson-labs.org/war/1.377/hudson.war"&gt;hudson war&lt;/a&gt; (wget it)&lt;/li&gt;&lt;li&gt;and you are done, java -jar /&lt;where_you_have_downloaded&gt;&lt;where_you_have_downloaded_the_war&gt;/hudson.war&lt;/where_you_have_downloaded_the_war&gt;&lt;/where_you_have_downloaded&gt;&lt;/li&gt;&lt;/ul&gt;&lt;where_you_have_downloaded&gt;&amp;nbsp; &lt;/where_you_have_downloaded&gt;&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/_hCFFSV1kPs8/TJYuCKefj1I/AAAAAAAAUfU/_HXhz720rug/s1600/Screen+shot+2010-09-19+at+8.43.15+PM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="157" src="http://2.bp.blogspot.com/_hCFFSV1kPs8/TJYuCKefj1I/AAAAAAAAUfU/_HXhz720rug/s320/Screen+shot+2010-09-19+at+8.43.15+PM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;If all is well, you will see you hudson instance running at port 8080. Access it in your browser, http://127.0.0.1:8080&lt;br /&gt;&lt;br /&gt;Now play around a bit, create some jobs and install some plugins.&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/_hCFFSV1kPs8/TJYu3UpqIdI/AAAAAAAAUfY/DaLqvS_fSec/s1600/Screen+shot+2010-09-19+at+9.09.31+PM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="148" src="http://4.bp.blogspot.com/_hCFFSV1kPs8/TJYu3UpqIdI/AAAAAAAAUfY/DaLqvS_fSec/s320/Screen+shot+2010-09-19+at+9.09.31+PM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Manage hudson give us ability to fiddle with default setting like paths, adding new slaves and setting the master hudson itself.&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/_hCFFSV1kPs8/TJYvaKE_FNI/AAAAAAAAUfc/RhW-sMGZS94/s1600/Screen+shot+2010-09-19+at+9.11.49+PM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="164" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/TJYvaKE_FNI/AAAAAAAAUfc/RhW-sMGZS94/s320/Screen+shot+2010-09-19+at+9.11.49+PM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Go ahead add some plugins (say irc plugin)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_hCFFSV1kPs8/TJYxIU30RdI/AAAAAAAAUfo/Yt6UmqhtLCM/s1600/Screen+shot+2010-09-19+at+9.18.40+PM.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="153" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/TJYxIU30RdI/AAAAAAAAUfo/Yt6UmqhtLCM/s320/Screen+shot+2010-09-19+at+9.18.40+PM.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Have fun with hudson and visit hudon-ci.org for more details &lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1478684486110041250?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1478684486110041250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/09/hudson-hudson-plugin-java-jar-hudsonwar.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1478684486110041250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1478684486110041250'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/09/hudson-hudson-plugin-java-jar-hudsonwar.html' title='hudson, hudson plugin, java -jar hudson.war, see the logs'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_hCFFSV1kPs8/TJYuCKefj1I/AAAAAAAAUfU/_HXhz720rug/s72-c/Screen+shot+2010-09-19+at+8.43.15+PM.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6554305821757007173</id><published>2010-07-27T17:16:00.000+05:30</published><updated>2010-09-16T12:15:32.533+05:30</updated><title type='text'>in true essence 9p carries the unix philosophy to every extend possible</title><content type='html'>9p,in true essence this represents the unix philosophy "all are files".  9p is a network protocol. File are key here. Files are used to represent windows, network connection, processes and almost everything else available in OS. You read it correct "everything is represented using file". Isn't awesome !!! There is a implementation wmii, a window manager (can be installed in most of the flavors of linux). Everything is a file here. We dont require a complex api to manipulate the X window system, since all are files scripting become very very easy. This implementaion is a showcase of how a complex system like this can be implemented in a very simple to use and scalable way.  I remember reading about 9p used in IBM Deep Blue Super Computer as well.  wmii, window manager also showcases intellegent tiling capabilities and is designed to make people productive by having less distractions.&lt;br/&gt;&lt;br/&gt;Am in love with this for the simplicity and the vision of this project. http://wmii.suckless.org/&lt;br/&gt;&lt;br/&gt;&lt;img class="alignnone" title="wmii screenshot" src="http://wmii.suckless.org/screenshots/wmii-20080117.png" alt="wmii " width="300" height="200" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6554305821757007173?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6554305821757007173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/in-true-essence-9p-carries-unix.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6554305821757007173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6554305821757007173'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/in-true-essence-9p-carries-unix.html' title='in true essence 9p carries the unix philosophy to every extend possible'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2455534897874225846</id><published>2010-07-25T00:59:00.000+05:30</published><updated>2010-09-16T12:15:32.522+05:30</updated><title type='text'>Eric Say KISS "Keep it simple Stupid"</title><content type='html'>Some of the unix philosophy i like to remind myself. Most of these principles are discussed in Eric's book "The Art of Unix Programming", a must read for every unix/linux developer.&lt;br/&gt;&lt;br/&gt;&lt;sup&gt;&lt;a href="http://en.wikipedia.org/wiki/Unix_philosophy#cite_note-4"&gt;&lt;/a&gt;&lt;/sup&gt;&lt;br/&gt;&lt;ul&gt;&lt;br/&gt;	&lt;li&gt;Rule of &lt;a title="Modularity (programming)" href="http://en.wikipedia.org/wiki/Modularity_%28programming%29"&gt;Modularity&lt;/a&gt;:  Write simple parts connected by clean interfaces.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Clarity: Clarity is better than cleverness.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Composition: Design programs to be connected to other  programs.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Separation: Separate policy from mechanism; separate  interfaces from engines.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Simplicity: Design for simplicity; add complexity only where  you must.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Parsimony: Write a big program only when it is clear by  demonstration that nothing else will do.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Transparency: Design for visibility to make inspection and  debugging easier.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Robustness: Robustness is the child of transparency and  simplicity.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Representation: Fold knowledge into data so program logic  can be stupid and robust.&lt;sup&gt;&lt;a href="http://en.wikipedia.org/wiki/Unix_philosophy#cite_note-5"&gt;[6]&lt;/a&gt;&lt;/sup&gt;&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Least Surprise: In interface design, always do the least  surprising thing.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Silence: When a program has nothing surprising to say, it  should say nothing.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Repair: When you must fail, fail noisily and as soon as  possible.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Economy: Programmer time is expensive; conserve it in  preference to machine time.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of &lt;a title="Code generation" href="http://en.wikipedia.org/wiki/Code_generation"&gt;Generation&lt;/a&gt;: Avoid hand-hacking; write  programs to write programs when you can.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of &lt;a title="Optimization (computer science)" href="http://en.wikipedia.org/wiki/Optimization_%28computer_science%29"&gt;Optimization&lt;/a&gt;:  &lt;a title="Prototype" href="http://en.wikipedia.org/wiki/Prototype"&gt;Prototype&lt;/a&gt; before polishing. Get it working before you optimize it.&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Diversity: Distrust all claims for "one true way".&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;Rule of Extensibility: Design for the future, because it will be  here sooner than you think.&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2455534897874225846?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2455534897874225846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/eric-say-kiss-it-simple-stupid.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2455534897874225846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2455534897874225846'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/eric-say-kiss-it-simple-stupid.html' title='Eric Say KISS &amp;quot;Keep it simple Stupid&amp;quot;'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-4222307459457080074</id><published>2010-07-22T18:37:00.000+05:30</published><updated>2010-09-16T12:15:32.508+05:30</updated><title type='text'>offtrack linux distributions</title><content type='html'>The more i look around, i see tons of innovation happening around open source especially linux. Looking at the linux community i feel they are getting orgasm every now and then with every project they undertake. There are some of projects are close to my heart and is listed below:&lt;br/&gt;&lt;br/&gt;* gentoo linux, http://www.gentoo.org/main/en/about.xml&lt;br/&gt;This brings the world of BSD to linux (ports: the bsd package manager). All here is source, we dont talk binary. Each binary is compiled and customized to your system. The installing is quiet try since we have to do everything from hard disk partition to getting the latest portage tree (or stage3 in gentoo terms). We build from a minimal system and it grows as we grow with requirement (or in gentoo terms we emerge). Portage is amazing package manager, but you need a deeper system knowledge to manage it over a period of time (yes i know expertise is required to manage any system ;-) ). There are some replacement to portage (Paludis) which claim to be better i have not got time to explore. But till i explore let's emerge .... The core developer of gentoo has started a new project funtoo, keep watching ... ;-)&lt;br/&gt;&lt;br/&gt;Hangs out in #gentoo in irc.freenode.net&lt;br/&gt;&lt;br/&gt;* arch linux, http://www.archlinux.org/about/&lt;br/&gt;Looks like this is born out of frustration of a gentoo user, who felt that we should not be emerging all the time. Normally a gentoo emerge can take hours to complete and sometime it can break you system badly ;-(     When gentoo using emerge deals with source packages and handles dependency management, arch does the same with pacman but deals with binary. It still does give the flexibility but reduced the build time by providing pre-build binary packages.&lt;br/&gt;&lt;br/&gt;In both gentoo/archlinux we dont have a scheduled releases but uses a "rolling release" (i know its a new terminology). packages are built on a daily basis and once pushed its available for customer. Yes there are edge cases where we have pushed on package 'x' and we require 'y' as a dependent package. In case if we have forgotten to push the package 'y' the package management system will detect that and will not update it. The mantra here is keep updating ... dont wait for a big bang release. The other interesting aspect here is we start from minimal install and keep building on top. In other words, install Just EnoughOperating System (or JeOS) and start from there. We grow as the system grows and we learn every day as we have update almost every day.&lt;br/&gt;&lt;br/&gt;Hangs out in #archlinux in irc.freenode.net&lt;br/&gt;&lt;br/&gt;* pardus&lt;br/&gt;A research project from turkey, focused on improving the usability &amp;amp; stability of linux. Has projects like mudur which reduces the start time to less than a minute (using the technique of parallel booting) . Another interesting aspect is the package manager, PiSi - Package Installed Successfully as Intended. Technically speaking PiSi downloads only the 'difference' of the old and new versions, a small delta file. Its a lot python centric.&lt;br/&gt;&lt;br/&gt;Hangs out in http://www.ozgurlukicin.com/forum/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-4222307459457080074?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/4222307459457080074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/offtrack-linux-distributions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/4222307459457080074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/4222307459457080074'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/offtrack-linux-distributions.html' title='offtrack linux distributions'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-986906196314443360</id><published>2010-07-22T16:42:00.000+05:30</published><updated>2010-09-16T12:15:32.496+05:30</updated><title type='text'>open source projects &amp; people</title><content type='html'>Some of my thoughts on people working in some of the active open source projects. I have been actively been part of couple of open source projects and some of them i recommend in work or to my friends (evangelist in me starts working ;-) ) The project that am referring to is hudson, gentoo &amp;amp; netty.&lt;br/&gt;&lt;br/&gt;All of them started as a free time/pet project but evolved to become a 100+ committers and tons of users and developers. The core developer of hudson was working in Sun when he started this and later sun start commercial offering around this project. Now with recent acquisition of Sun by Oracle, its perhaps unknown where is it heading towards. Of-course nothing will happen to project of this sort when the core developer move because there are bunch of guys already expert in architecture/design can perhaps steer this initiative to next level. But the project will take a dip for a while and then will re-emerge (if everything falls in place again). The same case happened with gentoo, the primary developer moved out and started a new project, funtoo. What happens in such case is that the primary developer takes few other key contributors along with them (this is natural), perhaps is the reason for the dip that i was mentioning earlier. The team might have extremely good technical skill but that alone is not enough.&lt;br/&gt;&lt;br/&gt;Perhaps this is a challenge in most of the free software. Am not sure if there is way to handle such cases. I know for sure that apache/fedora/ubuntu projects are very well handled by a steering committee which overlooks at the roadmap for the projects. They have a open source manifest which describes the do's and dont's. But there is no guarantee that the project will active or will be able to get active contributors, but at-least it's started with a mission and over a period of time i have seen it has achieved most of the goal it has set in the beginning.&lt;br/&gt;&lt;br/&gt;I also remember a case in apache mina project which got forked into a different project, netty and became part of jboss. Again some internal political issue (AFAIK).&lt;br/&gt;&lt;br/&gt;Its clear to me that people who contribute to projects may not be at loss, but people who use/evangelize which have to aware of such changes in the project and be prepared for such changes.&lt;br/&gt;&lt;br/&gt;Not all open source stuff is great, neither its bad. Do take a calcuated risk and get involved in the community. irc/mailing list/wiki/forum are a great way to start and become part of the community.&lt;br/&gt;&lt;br/&gt;references:&lt;br/&gt;gentoo http://www.gentoo.org/&lt;br/&gt;funtoo http://www.funtoo.org/&lt;br/&gt;netty http://www.jboss.org/netty&lt;br/&gt;apache http://www.apache.org/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-986906196314443360?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/986906196314443360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/open-source-projects-people.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/986906196314443360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/986906196314443360'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/open-source-projects-people.html' title='open source projects &amp;amp; people'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2453229237338955826</id><published>2010-07-17T21:03:00.000+05:30</published><updated>2010-09-16T12:15:32.485+05:30</updated><title type='text'>amazing yoga session in allapuzha</title><content type='html'>Am writing this blog from allapuzha. A small town in kerala. 3 hours&lt;br/&gt;from my home town. This is a small little village which has lot of&lt;br/&gt;back waters.&lt;br/&gt;&lt;br/&gt;I was invited by shivaraj an old time teacher who takes&lt;br/&gt;regular class in allapuzha. it was a great pleasure to meet all the&lt;br/&gt;50+ participants. We started with some chanting followed by some&lt;br/&gt;asanas and pranayams. It was little humid, it was sweating like hell but the sprit&lt;br/&gt;of group was good and I continued taking some more sessions followed&lt;br/&gt;by a good meditation and a awesome awesome satsang by fellow members.&lt;br/&gt;&lt;br/&gt;I leave this place with great memory, loads of love !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2453229237338955826?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2453229237338955826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/amazing-yoga-session-in-allapuzha.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2453229237338955826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2453229237338955826'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/amazing-yoga-session-in-allapuzha.html' title='amazing yoga session in allapuzha'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-4540594725577327255</id><published>2010-07-02T20:16:00.000+05:30</published><updated>2010-09-16T12:15:32.476+05:30</updated><title type='text'>awesome google</title><content type='html'>I was thrilled to look at the new google command line api, especially am excited for the fact that i can hook up googlecl and my bash script and do some batch activities that i do using hudson.&lt;br/&gt;&lt;br/&gt;more about google command line &lt;a href="http://code.google.com/p/googlecl/"&gt;here&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;command line r()cks !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-4540594725577327255?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/4540594725577327255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/awesome-google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/4540594725577327255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/4540594725577327255'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/awesome-google.html' title='awesome google'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6017334252461107558</id><published>2010-07-02T20:04:00.000+05:30</published><updated>2010-09-16T12:15:32.466+05:30</updated><title type='text'>old way to communicate - much before telephone and mobile phones</title><content type='html'>I was reading thru &lt;a href="http://en.wikisource.org/wiki/The_Complete_Works_of_Swami_Vivekananda/Volume_2/The_Powers_of_the_Mind"&gt;The Compete Works of Swami Vivekananda&lt;/a&gt; and found swamiji describing about telepathy. Isn't awesome that much before any of these mobile technologies the ancient rishis (or sage) know how to communicate&lt;br/&gt;&lt;br/&gt;read here&lt;br/&gt;&lt;blockquote&gt;Have you ever noticed the phenomenon that is called  thought-transference? A man here is thinking something, and that thought  is manifested in somebody else, in some other place. With preparations —  not by chance — a man wants to send a thought to another mind at a  distance, and this other mind knows that a thought is coming, and he  receives it exactly as it is sent out. Distance makes no difference. The  thought goes and reaches the other man, and he understands it. If your  mind were an isolated something here, and my mind were an isolated  something there, and there were no connection between the two, how would  it be possible for my thought to reach you? In the ordinary cases, it  is not my thought that is reaching you direct; but my thought has got to  be dissolved into ethereal vibrations and those ethereal vibrations go  into your brain, and they have to be resolved again into your own  thoughts. Here is a dissolution of thought, and there is a resolution of  thought. It is a roundabout process. But in telepathy, there is no such  thing; it is direct.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6017334252461107558?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6017334252461107558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/old-way-to-communicate-much-before.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6017334252461107558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6017334252461107558'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/old-way-to-communicate-much-before.html' title='old way to communicate - much before telephone and mobile phones'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6681605847912732688</id><published>2010-07-02T18:30:00.000+05:30</published><updated>2010-09-16T12:15:32.457+05:30</updated><title type='text'>amazon aws, more the number of servers</title><content type='html'>Last week i was working with a friend/client (rebus.in) of mine related to amazon aws especially ec2. Here am helping them with few stuff in build/release engineering + few more stuff in server monitoring.&lt;br/&gt;&lt;br/&gt;We have zero'ed on nagios as our tool to monitor. Nagios is good for couple of things listed below:&lt;br/&gt;&lt;br/&gt;- server monitoring (cpu, mem, io, disk space, etc)&lt;br/&gt;&lt;br/&gt;- application monitoring (process, programs)&lt;br/&gt;&lt;br/&gt;- sms gateway integration&lt;br/&gt;&lt;br/&gt;- email alerting&lt;br/&gt;&lt;br/&gt;and all the more we can have central configuration file sitting at the server (help in backup recovery)&lt;br/&gt;&lt;br/&gt;One area we identified which we might have challenge is instance reboot and adding new instance to amazon. In such cases the internal IP will change after a reboot. So the trick here is to DNS CNAME as discribed in this blog post http://alestic.com/2009/06/ec2-elastic-ip-internal&lt;br/&gt;&lt;br/&gt;Thanks Eric for a beautiful post on this&lt;br/&gt;&lt;br/&gt;Note: alestic.com is great source for those who work with amazon aws.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6681605847912732688?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6681605847912732688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/07/amazon-aws-more-number-of-servers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6681605847912732688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6681605847912732688'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/07/amazon-aws-more-number-of-servers.html' title='amazon aws, more the number of servers'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-15104732298170450</id><published>2010-04-15T18:11:00.000+05:30</published><updated>2010-04-15T18:11:10.085+05:30</updated><title type='text'>i went off to sleep without signing out</title><content type='html'>Recently my work demanded me to use acrobat.com for sharing some table and i went to work on few other things, when i came back what is saw is in the picture. Absolute creativity, am loving it !!! &lt;a href="http://3.bp.blogspot.com/_hCFFSV1kPs8/S8cJZGbV-DI/AAAAAAAAUF8/KsH4Tunl6OE/s1600/Fullscreen+capture+4152010+60426+PM.jpg"&gt;&lt;img style="MARGIN: 0px 0px 10px 10px; FLOAT: right; CLEAR: both" border="0" alt="" src="http://3.bp.blogspot.com/_hCFFSV1kPs8/S8cJZGbV-DI/AAAAAAAAUF8/KsH4Tunl6OE/s160/Fullscreen+capture+4152010+60426+PM.jpg" /&gt;&lt;/a&gt;&lt;div style='clear:both; text-align:RIGHT'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-15104732298170450?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/15104732298170450/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/04/i-went-off-to-sleep-without-signing-out.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/15104732298170450'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/15104732298170450'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/04/i-went-off-to-sleep-without-signing-out.html' title='i went off to sleep without signing out'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_hCFFSV1kPs8/S8cJZGbV-DI/AAAAAAAAUF8/KsH4Tunl6OE/s72-c/Fullscreen+capture+4152010+60426+PM.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-22461231959407442</id><published>2010-01-06T04:06:00.000+05:30</published><updated>2010-09-16T12:15:32.447+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='user experience'/><category scheme='http://www.blogger.com/atom/ns#' term='irctc'/><category scheme='http://www.blogger.com/atom/ns#' term='ux'/><category scheme='http://www.blogger.com/atom/ns#' term='new interface'/><category scheme='http://www.blogger.com/atom/ns#' term='beta'/><category scheme='http://www.blogger.com/atom/ns#' term='indian railway'/><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>instant love with new irctc beta interface</title><content type='html'>After a long wait we have better user interface for indian railway ticket booking. I wanted to go home this weekend as usual i was checking the availability. Then suddenly i noticed &amp;lt;blinking&amp;gt; &lt;a href="http://www.irctc.co.in/cgi-bin/beta.dll/irctc/services/home.do" target="_blank"&gt;Try new interface - beta&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;They have done a good job, it usable and its fast compared to predecessor. Good job irctc !&lt;br/&gt;&lt;br/&gt;Next site i would like to see a beta interface is &lt;a href="http://ksrtc.in"&gt;ksrtc.in&lt;/a&gt; At the moment its usable but it can be better.&lt;br/&gt;&lt;br/&gt;User Experience matters !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-22461231959407442?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/22461231959407442/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/01/instant-love-with-new-irctc-beta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/22461231959407442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/22461231959407442'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/01/instant-love-with-new-irctc-beta.html' title='instant love with new irctc beta interface'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-860468266319657992</id><published>2010-01-06T03:42:00.000+05:30</published><updated>2010-09-16T12:15:32.437+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>type in any language and see in your preferred language</title><content type='html'>last day me and couple of collegues in #openbravo  were discussing some interesting idea related to how can we accommodate internationalization in irc.&lt;br/&gt;&lt;br/&gt;The context of discussion is as follows. Since our developers are non-english and are from every part of world they often find it tough to communicate it english and some even feel bad that they cannot speak in english. Most of the time we jump in and encourage them to use translate.google.com or simillar service to convert their question to english. The following thought came to us while thinking about this problem.  Our primary mode of communication is thu irc (#openbravo in freenode.net) So a possibility is implementing translation feature in irc where in any user can set in their preferred language for writing and reading. For example my mother tongue is Malayalam (spoken in southern part of India) so with this set as preferred language for writing and my other colleague Mr x has set Spanish as his reading language. In short i write in my preferred language and he reads in his preferred language.&lt;br/&gt;&lt;br/&gt;Won't this be a interesting feature ? For me yes !  For other(s) in the list this was start trek fantasy ;-)&lt;br/&gt;&lt;br/&gt;So far we have found a translator and it work  s http://futureboy.us/chat/&lt;br/&gt;&lt;br/&gt;One possible implementation could be hook this logic using irssi (an irc client which rOcks !). A user can set his reading/writing language and behind the scene hook it up with google translate.&lt;br/&gt;&lt;br/&gt;Waiting to hear from other's on this thought !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-860468266319657992?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/860468266319657992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2010/01/type-in-any-language-and-see-in-your.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/860468266319657992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/860468266319657992'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2010/01/type-in-any-language-and-see-in-your.html' title='type in any language and see in your preferred language'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6641603820256939189</id><published>2009-12-28T22:58:00.000+05:30</published><updated>2010-09-16T12:15:32.288+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='howto'/><category scheme='http://www.blogger.com/atom/ns#' term='amazon'/><category scheme='http://www.blogger.com/atom/ns#' term='guide'/><category scheme='http://www.blogger.com/atom/ns#' term='ec2'/><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>ec2 instance-store to ebs-boot</title><content type='html'>ec2 instance-store to ebs-boot&lt;br/&gt;&lt;br/&gt;Last few days I am working on converting our existing amazon ec2 instance based store to ebs boot. &lt;a href="http://aws.amazon.com/about-aws/whats-new/2009/12/03/amazon-ec2-instances-now-can-boot-from-amazon-ebs/" target="_blank"&gt;EBS Boot&lt;/a&gt; is a new feature amazon added to ec2 where we can boot an ec2 instance directly from &lt;a href="http://aws.amazon.com/ebs/" target="_blank"&gt;EBS&lt;/a&gt;. We have 20+ servers which need runs in instance store and its a pain to backup/restore or clone these instance. Now with EBS its as easy as one could imagine.&lt;br/&gt;&lt;br/&gt;At the moment amazon has not document how to migrate existing instance store to ebs boot. I also ended up reading some blog which i think is poorly documented. Hence i thought people like me who is converting existing instance-store to ebs boot might find my document useful.&lt;br/&gt;&lt;br/&gt;We did in EU region, so we need to change the required parameters based on you requirements (especially EC2_URL and zone details)&lt;br/&gt;&lt;br/&gt;Logical steps here&lt;br/&gt;&lt;ul&gt;&lt;br/&gt;	&lt;li&gt;note down the instance that you are gonna migrate to ebs boot, eg: i-xxxxxxx&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;create a new volume,&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;attach this volume to existing amazon instance&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;create a new file system in new device that is attached&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;mount the newly created device to a directory&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;copy all the required directory and file recursively&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;create a snapshot of the volume&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;register a new ami with the snapshot and previously know aki&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;start a new instance with new ami&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;we have converted you existing instance-store to ebs boot&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;repeat for other servers&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;br/&gt;[sourcecode language="bash"]&lt;br/&gt;# FYI update ec2-api-tool to latest, at the time of writing mine was ﻿1.3-45772 2009-10-31&lt;br/&gt;# to check your u can run &lt;br/&gt;ec2-version&lt;br/&gt;# note the instance id that you are working with&lt;br/&gt;&lt;br/&gt;INSTANCE_ID=i-xxxxxxxxx&lt;br/&gt;&lt;br/&gt;INSTANCE_IP_ADDRESS=aa.bb.cc.dd&lt;br/&gt;&lt;br/&gt;KEYPAIR=keypair-eu&lt;br/&gt;&lt;br/&gt;#create a new volume&lt;br/&gt;&lt;br/&gt;# note the volume ID&lt;br/&gt;&lt;br/&gt;VOLUME_ID=vol-yyyyyyy&lt;br/&gt;&lt;br/&gt;#attach it to current running instance, i use device as /dev/sdz because i have not seen sdz using it anywhere. please check before attaching. Login to the box and check if a device with same name is attached.&lt;br/&gt;&lt;br/&gt;ATTACH_IT_TO_DEVICE=/dev/sdz&lt;br/&gt;&lt;br/&gt;#format it (mkfs.ext3)&lt;br/&gt;&lt;br/&gt;#login to instance where you attached the volume&lt;br/&gt;&lt;br/&gt;INSTANCE_IP_ADDRESS=`ec2-describe-addresses $INSTANCE_ID`&lt;br/&gt;&lt;br/&gt;ssh -i $KEYPAIR ${USERNAME}@${INSTANCE_IP_ADDRESS}&lt;br/&gt;&lt;br/&gt;# become root and execute the following&lt;br/&gt;&lt;br/&gt;mkfs.ext3 $ATTACH_IT_TO_DEVICE&lt;br/&gt;&lt;br/&gt;#mount it to /&amp;lt;new-directory&amp;gt;&lt;br/&gt;&lt;br/&gt;# make sure some other fs in not mounted here already&lt;br/&gt;&lt;br/&gt;MOUNT_DIRECTORY=/mnt/ebs_boot&lt;br/&gt;&lt;br/&gt;mkdir -p $MOUNT_DIRECTORY&lt;br/&gt;&lt;br/&gt;mount $ATTACH_IT_TO_DEVICE $MOUNT_DIRECTORY&lt;br/&gt;&lt;br/&gt;#rsync required directories&lt;br/&gt;&lt;br/&gt;rsync -avHx / $MOUNT_DIRECTORY&lt;br/&gt;&lt;br/&gt;rsync -avHx /dev/ $MOUNT_DIRECTORY/dev/&lt;br/&gt;&lt;br/&gt;# if more directories to by synced please copy&lt;br/&gt;&lt;br/&gt;rsync -avHx /{other directories} /mnt/ebs_boot/{res}&lt;br/&gt;&lt;br/&gt;# adjust fstab, u can start with just one line&lt;br/&gt;&lt;br/&gt;# add the following line and comment rest all&lt;br/&gt;&lt;br/&gt;# /dev/sda1 /        ext3  user_xattr          0 1&lt;br/&gt;&lt;br/&gt;# unmount, this is must other wise there will data still not written to volume&lt;br/&gt;&lt;br/&gt;umount /mnt/ebs_boot&lt;br/&gt;&lt;br/&gt;# detach the volume&lt;br/&gt;&lt;br/&gt;ec2-detach-volume VOLUME_ID -i INSTANCE_ID&lt;br/&gt;&lt;br/&gt;# create the snapshot of the volume that you are working with&lt;br/&gt;&lt;br/&gt;ec2-create-snapshot -d &amp;quot;a neat description will be good for youself later to identify what is this snapshot&amp;quot; $VOLUME_ID&lt;br/&gt;&lt;br/&gt;SNAPSHOT_ID=snap-xxxxx&lt;br/&gt;&lt;br/&gt;#wait for the snapshot to be created&lt;br/&gt;&lt;br/&gt;ec2-describe-snapshot $SNAPSHOT_ID&lt;br/&gt;&lt;br/&gt;# when the above snapshot creation is 100%, register this snapshot with kernel that you want&lt;br/&gt;&lt;br/&gt;#to get amazon kernel aki ec2-describe-images -o amazon | grep 2.6.18-xenU-ec2-v1.2 | grep aki&lt;br/&gt;&lt;br/&gt;# aki-966a41e2 - amazon patched kernel with null pointer dereference vulnerability fixed&lt;br/&gt;&lt;br/&gt;AKI=aki-966a41e2&lt;br/&gt;&lt;br/&gt;ARCH=i386&lt;br/&gt;&lt;br/&gt;ROOT_DEVICE=/dev/sda1&lt;br/&gt;&lt;br/&gt;ec2-register -s $SNAPSHOT_ID --kernel $AKI --description &amp;quot;Remember to replace this with a good description&amp;quot; --architecture $ARCH --root-device-name $ROOT_DEVICE&lt;br/&gt;&lt;br/&gt;# collect the ami id from output of above command and store it in a variable&lt;br/&gt;&lt;br/&gt;AMI=ami-xxxxx&lt;br/&gt;&lt;br/&gt;# if you wish check the ami details once again, the aki, root device, arch, etc...&lt;br/&gt;&lt;br/&gt;ec2-describe-image $AMI&lt;br/&gt;&lt;br/&gt;# select the security group you want to run the new ami&lt;br/&gt;&lt;br/&gt;SECURITY_GROUP=xxx.openbravo.com&lt;br/&gt;&lt;br/&gt;ec2-run-instances -k $KEYPAIR-EU -g $SECURITY_GROUP $AMI&lt;br/&gt;&lt;br/&gt;EBS_INSTANCE_ID=&amp;quot;note the instance id from above command&amp;quot;&lt;br/&gt;&lt;br/&gt;# watch till it get a elastic ip&lt;br/&gt;&lt;br/&gt;watch -n 10 &amp;quot;ec2-describe-instances $EBS_INSTANCE_ID&amp;quot;&lt;br/&gt;&lt;br/&gt;# with new ip, check if all required services are migrated and is working&lt;br/&gt;&lt;br/&gt;# eg: if you have a webservice, make sure it running properly, etc&lt;br/&gt;&lt;br/&gt;# now time to disassociate/associate ip address&lt;br/&gt;&lt;br/&gt;#&lt;br/&gt;&lt;br/&gt;ec2-disassociate-address $INSTANCE_IP_ADDRESS&lt;br/&gt;&lt;br/&gt;ec2-associate-address $INSTANCE_IP_ADDRESS -i $EBS_INSTANCE_ID&lt;br/&gt;&lt;br/&gt;# cleanup the resource&lt;br/&gt;&lt;br/&gt;# 1) shutdown the old instance&lt;br/&gt;&lt;br/&gt;# 2) release unwanted snapshots/volumes&lt;br/&gt;&lt;br/&gt;# 3) ....&lt;br/&gt;&lt;br/&gt;# we are done.&lt;br/&gt;&lt;br/&gt;[/sourcecode]&lt;br/&gt;&lt;br/&gt;reference&lt;br/&gt;&lt;br/&gt;&lt;img class="alignnone" title="ec2_ebs_s3" src="http://docs.amazonwebservices.com/AWSEC2/2009-11-30/UserGuide/images/ebs_api.jpg" alt="" width="509" height="131" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6641603820256939189?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6641603820256939189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/12/ec2-instance-store-to-ebs-boot.html#comment-form' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6641603820256939189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6641603820256939189'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/12/ec2-instance-store-to-ebs-boot.html' title='ec2 instance-store to ebs-boot'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8915549064562704473</id><published>2009-10-16T13:28:00.000+05:30</published><updated>2010-09-16T12:15:32.240+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='guice'/><category scheme='http://www.blogger.com/atom/ns#' term='ioc'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Yet another email client - Apache James Hupa</title><content type='html'>Being a great fan of apache, i keep logging into Apache incubator and labs to check the new entries. I was always attracted to Apache James begin a possible replacement for enterprise class email servers (other contender is Qmail and Postfix). Both Qmail and Postfix being is C there is least that i can contribute. Am more comfortable with java for multiple reason, on  being platform independent, array of library support and finally amazing sexy frameworks to support the development. Few of the framework that i have fallen in love with is GiWT &amp;amp; Spring. The shear power and flexibility of framework combined with support in eclipse makes the development/release a breeze.&lt;br/&gt;&lt;br/&gt;Hupa, not sure how it got the name is a email client based on GiWT. In GiWT we dont write javascript but instead we write java which get compiled into browser specific java-script(If you have not tried, then give it a try its amazing and am sure with a weeks time you will fall in love with the design and architecture). I like this framework primarily i like to see java code instead of cluttered javascript (am sure this is the case with few guys in google as well). Hupa uses &lt;a href="http://code.google.com/p/google-guice/"&gt;guice &lt;/a&gt;(pronounced as juice) for Dependency Injection aka DI.&lt;br/&gt;&lt;br/&gt;All said and done i ventured out to try it out myself. First stint was with setting up the environment(since i had past experience with gwt this was relatively easy). This was a pain because of there were bits of pieces of documentation. Being a opensource project i cannot crib about this not found and that not found. So i decided to learn myself. I started looking how already logged in issues and found couple of them to be helpful, especially &lt;a href="https://issues.apache.org/jira/browse/HUPA-40"&gt;this one&lt;/a&gt;. I had problems in eclipse with java 64 bit. Finally after my usual cup of morning chai (or tea) i decide to look at it and boooom it worked.&lt;br/&gt;&lt;br/&gt;I used google gwt eclipse plugin, maven eclipse plugin and i created my configuration and gwt hosted mode was up. I still have problem in "mvn clean package" which throws out the following error. But i suppose this can be ignored. I shall update this post when i find a answer for the same.&lt;br/&gt;&lt;blockquote&gt;&lt;br/&gt;&lt;pre&gt;The following mojo encountered an error while executing:&lt;br/&gt;Group-Id: org.apache.maven.plugins&lt;br/&gt;Artifact-Id: maven-war-plugin&lt;br/&gt;Version: 2.1-alpha-1&lt;br/&gt;Mojo: war&lt;br/&gt;brought in via: packaging: war&lt;br/&gt;While building project:&lt;br/&gt;Group-Id: org.apache.hupa&lt;br/&gt;Artifact-Id: hupa-client&lt;br/&gt;Version: 0.0.1-SNAPSHOT&lt;br/&gt;From file: D:\projects\hupa-parent\client\pom.xml&lt;br/&gt;Reason: Failed to copy file for artifact[active project artifact:&lt;br/&gt;artifact = org.apache.hupa:hupa-server:jar:0.0.1-SNAPSHOT:compile;&lt;br/&gt;project: MavenProject: org.apache.hupa:hupa-server:0.0.1-SNAPSHOT @ D:\projects\hupa-parent\server\pom.xml]&lt;/pre&gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;So in short hupa == Google GIN + Apache Maven + GWT == New generation Email Client&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8915549064562704473?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8915549064562704473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/10/yet-another-email-client-apache-james.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8915549064562704473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8915549064562704473'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/10/yet-another-email-client-apache-james.html' title='Yet another email client - Apache James Hupa'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5722903704241382912</id><published>2009-10-13T16:43:00.000+05:30</published><updated>2010-09-16T12:15:32.222+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='gnuyoga'/><title type='text'>I have decided to move on</title><content type='html'>I have been a great google fan and naturally i used blogger as my preferred blog. But when i looked around i found that evolution of blogger is not in par with the blog industry. Probably this is because google is not making enough money like in gmail or other collaboration applications to keep blogger development going. Any way i was really impressed with wordpress for admin interface, themes, etc ... The blog content editor seems pretty good and give me a kick to write more(perhaps because of default font they use). I also have decided that i will write well researched article with subject background and practical application of the same.&lt;br/&gt;&lt;br/&gt;In this blog i will contemplate about tools, programming languages, designs, people, software architecture, open source development, agile methodologies, books, inspirational people, mystic/yogic experiences, photography, travel and list will probably go further as i explore this beautiful life.&lt;br/&gt;&lt;br/&gt;In case you have landed here thru google or from my friends blog, feel free to drop in your comments/suggestion/expression of love. It will inspire me to write more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5722903704241382912?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5722903704241382912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/10/i-have-decided-to-move-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5722903704241382912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5722903704241382912'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/10/i-have-decided-to-move-on.html' title='I have decided to move on'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3210599931510421469</id><published>2009-08-26T00:59:00.000+05:30</published><updated>2010-09-16T12:15:32.137+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='gwt'/><category scheme='http://www.blogger.com/atom/ns#' term='helloworld'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='smartgwt'/><category scheme='http://www.blogger.com/atom/ns#' term='maven'/><title type='text'>SmartGWT 1.2 / GWT 1.7.0 / Eclipse Galieo</title><content type='html'>&lt;a href="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture25-08-20091854261.jpg"&gt;&lt;img class="alignright" style="border:0 initial initial;" src="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture25-08-20091854261.jpg?w=300" border="0" alt="" width="210" height="131" /&gt;&lt;/a&gt;In the past when i was prototyping a new generation web 2.0 product i came across &lt;a href="code.google.com/webtoolkit"&gt;gwt&lt;/a&gt; and found that its awesome to work in gwt. When my client demanded more feature we decide to look at few available widget libraries. Natural choice was &lt;a href="http://code.google.com/p/gwt-ext/"&gt;Ext-GWT&lt;/a&gt; which is a wrapper around ext-js. We used this and completed the prototype. Now came the problem with some &lt;a href="http://www.gwt-ext.com/forum/viewtopic.php?p=3567&amp;amp;"&gt;licenses&lt;/a&gt; and Ext-GWT stopped its development because the &lt;a href="http://www.jroller.com/sjivan/"&gt;lead developer&lt;/a&gt; moved on to different project. The different project the lead developer started working is called &lt;a href="http://code.google.com/p/smartgwt/"&gt;SmartGWT&lt;/a&gt; which again was a wrappert around smartclient js library. Looked like a stable and mature framework and it was indeed a mature one. Last week end i got some time to try the new smartgwt 1.2 which is the lastet release by smartgwt team. My end goal is to do a mash up and try deploying it in App Engine (aka GAE)&lt;br/&gt;&lt;br/&gt;So far so good. Am able to a hello world !&lt;br/&gt;&lt;br/&gt;1) install eclipse (galieo)&lt;br/&gt;2) gwt maven plugin, follow this link and do as instructed&lt;br/&gt;&lt;a href="http://smartgwt.rorschach.de/index.php5/Setting_up_Eclipse_%26_Maven2"&gt;http://smartgwt.rorschach.de/index.php5/Setting_up_Eclipse_%26_Maven2&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;am done, few clicks my hello world is ready !&lt;br/&gt;&lt;div style="clear:both;text-align:left;"&gt;&lt;a href="http://picasa.google.com/blogger/" target="ext"&gt;&lt;img src="http://photos1.blogger.com/pbp.gif" border="0" alt="Posted by Picasa" align="middle" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3210599931510421469?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3210599931510421469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/08/smartgwt-12-gwt-170-eclipse-galieo_26.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3210599931510421469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3210599931510421469'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/08/smartgwt-12-gwt-170-eclipse-galieo_26.html' title='SmartGWT 1.2 / GWT 1.7.0 / Eclipse Galieo'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5046734814468485680</id><published>2009-08-16T03:43:00.000+05:30</published><updated>2010-09-16T12:15:32.102+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='gdata'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='docs.google.com'/><category scheme='http://www.blogger.com/atom/ns#' term='1'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>gdata copier and docs.google.com backup</title><content type='html'>&lt;a href="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture15-08-20091034081.jpg"&gt;&lt;img class="alignright" style="border:0 initial initial;" src="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture15-08-20091034081.jpg?w=300" border="0" alt="" width="180" height="101" /&gt;&lt;/a&gt;&lt;br/&gt;I had some time to explore gdatacopier. My idea was to figure out a way to backup docs.google.com. We in Openbravo use a lot of docs.google.com and we wanted to make sure its backed up just in case google is not reachable or if it crashes ;-)&lt;br/&gt;&lt;br/&gt;gdatacopier is a wrapper around google api to export/import documents from doc.google.com at the moment its installed in our irc.openbravo and i used the following script to further simplify the usage.&lt;br/&gt;&lt;pre&gt;&lt;span style="font-family:Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif;line-height:19px;white-space:normal;font-size:13px;"&gt;So here we are with a way of automated backup of docs.google.com&lt;/span&gt;&lt;/pre&gt;&lt;br/&gt;My machine:&lt;br/&gt;- Amazon EC2 Instance (type: small)&lt;br/&gt;- OS - gentoo with python 2.6&lt;br/&gt;&lt;br/&gt;steps i followed:&lt;br/&gt;&lt;ul&gt;&lt;br/&gt;	&lt;li&gt;emerge -av setuptools&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;easy_install gdata&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;download and unzip http://code.google.com/p/gdatacopier/ (i unzipped in /usr/local/src/)&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;save the following in a file (say gdoc_backup.sh)&lt;/li&gt;&lt;br/&gt;[sourcecode language="bash"]&lt;br/&gt;&lt;br/&gt;#!/bin/bash&lt;br/&gt;#&lt;br/&gt;DATE=`date +%d`&lt;br/&gt;DEST_DIR=&amp;quot;/tmp/$DATE&amp;quot;&lt;br/&gt;USERNAME=&amp;quot;USER@gmail.com&amp;quot;&lt;br/&gt;PASSWORD=&amp;quot;PASSWORD&amp;quot;&lt;br/&gt;mkdir -p $DEST_DIR&lt;br/&gt;/usr/local/src/gdatacopier-1.0.2/gdoc-cp.py -u $USERNAME -p $PASSWORD --google-id all --local $DEST_DIR --export default&lt;br/&gt;&lt;br/&gt;[/sourcecode]&lt;br/&gt;	&lt;li&gt;run the above script after updating USER and PASSWORD&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;br/&gt;if you wish you can add it to a cronjob. This will make full automated backup of docs.google.com&lt;br/&gt;&lt;br/&gt;WARNING: time it takes depends on number of documents in docs.google.com&lt;br/&gt;&lt;br/&gt;reference:&lt;br/&gt;http://code.google.com/p/gdatacopier/&lt;br/&gt;&lt;br/&gt;&lt;a href="http://picasa.google.com/blogger/" target="ext"&gt;&lt;img src="http://photos1.blogger.com/pbp.gif" border="0" alt="Posted by Picasa" align="middle" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5046734814468485680?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5046734814468485680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/08/gdata-copier-and-docsgooglecom-backup.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5046734814468485680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5046734814468485680'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/08/gdata-copier-and-docsgooglecom-backup.html' title='gdata copier and docs.google.com backup'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8033388129994730941</id><published>2009-08-15T14:49:00.000+05:30</published><updated>2010-09-16T12:15:32.074+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Write your app in gwt and click deploy</title><content type='html'>google as usual has integrated a new feature in google eclipse plugin.&lt;a href="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture15-08-20090845551.jpg"&gt;&lt;img class="alignright" style="border:0 none;" src="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture15-08-20090845551.jpg?w=300" border="0" alt="" width="210" height="131" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Now we can build a GWT application (no javascript hell at all) but pure AJAX app and click deploy to make it work with google.appspot.com (aka. google app engine)&lt;br/&gt;&lt;br/&gt;this also has data access layer and seems promising.&lt;br/&gt;&lt;br/&gt;i was thinking of one possiblity, if amazon simble DB and queueing servers can be connected we can perhaps make world class application with minimal infrastructure and at low cost ...&lt;br/&gt;&lt;br/&gt;wow ... thanks google for opening up a new avenue for us !&lt;br/&gt;&lt;div style="clear:both;text-align:RIGHT;"&gt;&lt;a href="http://picasa.google.com/blogger/" target="ext"&gt;&lt;img src="http://photos1.blogger.com/pbp.gif" border="0" alt="Posted by Picasa" align="middle" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8033388129994730941?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8033388129994730941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/08/write-your-app-in-gwt-and-click-deploy_15.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8033388129994730941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8033388129994730941'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/08/write-your-app-in-gwt-and-click-deploy_15.html' title='Write your app in gwt and click deploy'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3972117443015640391</id><published>2009-08-15T01:06:00.000+05:30</published><updated>2010-09-16T12:15:31.991+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>GWT 1.6</title><content type='html'>&lt;div style="text-align:center;margin:0 auto 10px;"&gt;&lt;a href="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture14-08-20091906231.jpg"&gt;&lt;img border="0" alt="" src="http://gnuyoga.files.wordpress.com/2009/08/fullscreencapture14-08-20091906231.jpg?w=300" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;GWT 1.6 rocks and google eclipse plugin works like a charm :)&lt;div style='clear:both;text-align:CENTER;'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3972117443015640391?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3972117443015640391/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/08/gwt-16_15.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3972117443015640391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3972117443015640391'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/08/gwt-16_15.html' title='GWT 1.6'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5364811925251921108</id><published>2009-08-14T22:02:00.000+05:30</published><updated>2010-09-16T12:15:31.912+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Ex Astha get together, meeting bogi</title><content type='html'>that's yathiraj eating button idly, green idly, pakoda, rasam vada .... rajeev is feeding him and harpeet is seeing how these south indian eat so much of food and all with sambar :) &lt;a href="http://gnuyoga.files.wordpress.com/2009/08/img_02031.jpg"&gt;&lt;img border="0" alt="" src="http://gnuyoga.files.wordpress.com/2009/08/img_02031.jpg?w=300" /&gt;&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Ex Astha guys met in krishna bhavan, malleswaram couple of months back !&lt;br /&gt;&lt;br /&gt;pretty much all have moved to different profile.&lt;br /&gt;&lt;br /&gt;kumaran with yahoo, rajeev with another startup, me &amp;amp; harpreet with Openbravo, mithun in dubai, yathi &amp;amp; ajeeth in axa, gowri with another client from italy, shilpa in US, manoj with oracle, hari &amp;amp; raghu with siemens, siva in sigapore, ram with a new construction company...&lt;br /&gt;&lt;br /&gt;oooohhhh .... last year almost same time we were thinking what we can do next to save our life :)&lt;div style='clear:both;text-align:RIGHT;'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5364811925251921108?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5364811925251921108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/08/ex-astha-get-together-meeting-bogi_14.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5364811925251921108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5364811925251921108'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/08/ex-astha-get-together-meeting-bogi_14.html' title='Ex Astha get together, meeting bogi'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-559590661991695531</id><published>2009-08-03T22:45:00.000+05:30</published><updated>2010-09-16T12:15:31.893+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Openbravo ERP, 2.50 MP3 release</title><content type='html'>so here are are with timely release of 2.50 MP&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;more news here&lt;br /&gt;http://forge.openbravo.com/plugins/espnews/browse.php?group_id=100&amp;amp;news_id=141&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;go grab the latest version of Openbravo ERP and try it. If you question please join us in irc.freenode.net openbravo  channel&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-559590661991695531?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/559590661991695531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/08/openbravo-erp-250-mp3-release_03.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/559590661991695531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/559590661991695531'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/08/openbravo-erp-250-mp3-release_03.html' title='Openbravo ERP, 2.50 MP3 release'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5947790491423673738</id><published>2009-07-24T03:29:00.000+05:30</published><updated>2010-09-16T12:15:31.872+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>taking care of my dad</title><content type='html'>Of late i have been taking an extra effort in taking care of dad. He has some health issues. He had a heart attack few years back and docs say the post attack care was not good. This we came to know when we went for a checkup. His foot developed a swelling. The reason for swelling it seems is because of edima accumulated because the liver is not working great.&lt;br /&gt;&lt;br /&gt;Fortunately my sister-in-law she worked in the medical field and got to know of a doctor named sivakadaksham. He has a clinic in chennai and is very down to earth.&lt;br /&gt;&lt;br /&gt;I had a brief conversation with him personnal to check the real condition. He said his heart is weak. Its pumping rate is 35% (normal is around 65%) means condition is not very good.&lt;br /&gt;&lt;br /&gt;After this he started his course of medicine (during jan 2009). During these time all at home in panic state and but fortunately his condition improved. pumping got back to 45% which is amazing according to doctor.&lt;br /&gt;&lt;br /&gt;Dad has a regular routine for last 40 years. He wakes up at 4, in temple at 6, back from temple at 7:30, with paper till 9, 10 he eats, 10:15 in office, 1 he is back, till 3 he sleeps, 4:30 back to office, 6 back home, watch tv till 8, eats at 8:30&lt;br /&gt;&lt;br /&gt;this routine perhaps has helped him get a healthy body.&lt;br /&gt;&lt;br /&gt;But off late he started complaining lack of taste in food and his food qualtity became very less. And intake of medicine was him. most of the time he was sleepy and tired (medicine effect)&lt;br /&gt;&lt;br /&gt;I was fortunate enough to meet a suresh anna, an amazing muscial and firm believer of alopathy is organized crime helped me understand how nature can take of body if given proper diet.&lt;br /&gt;&lt;br /&gt;Since being vegetarian we have certain limiitation. It tends to become boring and not as charming to enjoy a meal. This was a problem for me and for lot of other.&lt;br /&gt;&lt;br /&gt;below is a recipe which is healthy and i have personally seen great results (in my dad) who could not walk a km now could walk around 3 km without complaining.&lt;br /&gt;&lt;br /&gt;take a little time to read and understand yourbody and get youself a good diet.&lt;br /&gt;&lt;br /&gt;Healthy Guidelines&lt;br /&gt;http://docs.google.com/Doc?docid=0AZ1cvRKx4murZGZ0Zm45ZGNfNjFnc3ptenBmOA&amp;amp;hl=en&lt;br /&gt;&lt;br /&gt;Grainless Recipe&lt;br /&gt;http://docs.google.com/Doc?docid=0AZ1cvRKx4murZGZ0Zm45ZGNfNjBkYjY4cG1kbQ&amp;amp;hl=en&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5947790491423673738?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5947790491423673738/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/07/taking-care-of-my-dad_24.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5947790491423673738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5947790491423673738'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/07/taking-care-of-my-dad_24.html' title='taking care of my dad'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-498246615513951509</id><published>2009-06-27T04:28:00.000+05:30</published><updated>2010-09-16T12:15:31.833+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>faster, faster and faster ... how fast we can test</title><content type='html'>Over the past week i have been researching on how can deliver our smoke test faster. (for people new to smoke test: smoke test is a preliminary to further testing, which should reveal simple failures severe enough to reject a prospective software release)&lt;br /&gt;&lt;br /&gt;Openbravo ERP is a full fledged Java based web application this means the end product is browser based UI and its need testing The natural choice of testing is selenium, contribution to opensource from thoughtworks. &lt;br /&gt;&lt;br /&gt;Fundamentally, Selenium is a tool that let you programmatically        launch a browser, drive the browser (open a url, enter some data,       click on a link) and check the browser state (a section is visible,        specific text is present, a widget is disabled). It is the tool of        choice for many programmers for automating web testing.&lt;br /&gt;&lt;br /&gt;Lets look at the permutation and combination of our test case.&lt;br /&gt;&lt;br /&gt;At the minimum we have to make sure the product has to run with&lt;br /&gt;1) internet explorer in windows&lt;br /&gt;2) firefox in windows &lt;br /&gt;3) firefox in linux&lt;br /&gt;4) optional browser like opera, safari, etc ..&lt;br /&gt;&lt;br /&gt;These days most of the browser can be installed in different operating system but we cannot assure that same version of firefox running in windows will behave the same way in linux and viceversa.&lt;br /&gt;&lt;br /&gt;My team runs the continious integration server (we use &lt;a href="https://hudson.dev.java.net/"&gt;hudson&lt;/a&gt;) and we have smoke test running every day for different version of Openbravo ERP (2.3x, 2.4, 2.5, etc). My goal was to figure out the bottle necks in the current smoke tests and perhaps propose a way to make it faster. At the moment we have a amazon ec2 large instance (&lt;a href="http://aws.amazon.com/ec2/#instance"&gt;Amazon EC2 Instances&lt;/a&gt;). EC2 large instance == 8GB of RAM and 2 core processor.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;In the process of find out what can we do better i came across selenium-grid which claims to reduce the test time by many times.&lt;br /&gt;&lt;br /&gt;A quick Maths (using amazon ec2 instance) is easier is better way to understand what's the expected result.&lt;br /&gt;&lt;br /&gt;normal scenario:&lt;br /&gt;5 machines * 30 days * 2 hours * 0.10 $/hour (approx) = 30$ month, results in 2 hours&lt;br /&gt;&lt;br /&gt;with test running parallel:&lt;br /&gt;&lt;b&gt;10&lt;/b&gt; machines * 30 days * &lt;b&gt;1&lt;/b&gt; hours * 0.10 $/hour (approx) = 30$ month, results in &lt;b&gt;1&lt;/b&gt; hour&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Selenium Grid, Behind the scene. Traditionally it looks like this&lt;br /&gt;&lt;div class="separator" style="clear:both;text-align:center;"&gt;&lt;a href="http://selenium-grid.seleniumhq.org/diagrams/Traditional%20Selenium%20Setup.png" style="margin-left:1em;margin-right:1em;"&gt;&lt;img border="0" height="396" src="http://selenium-grid.seleniumhq.org/diagrams/Traditional%20Selenium%20Setup.png" width="520" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear:both;text-align:center;"&gt;&lt;a href="http://gnuyoga.files.wordpress.com/2009/06/traditionalseleniumsetup-small1.png" style="margin-left:1em;margin-right:1em;"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Selenium Grid gives the following architecture. One of the most confusing point was how many remote control (rc) we can run in a machine. Know that we can run more than one remote control (rc) in one machine.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear:both;text-align:center;"&gt;&lt;a href="http://selenium-grid.seleniumhq.org/diagrams/Selenium%20Grid%20Setup.png" style="margin-left:1em;margin-right:1em;"&gt;&lt;img border="0" height="396" src="http://selenium-grid.seleniumhq.org/diagrams/Selenium%20Grid%20Setup.png" width="520" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now that we know we can run selenium is a grid we need to know how to write the test so that it can make the best advantage of this grid. Ofcouse we can run concurrent multiple browser (ff,ie) / multiple platform (win,linux,mac) test using selenium grid with faster turnaround time. &lt;br /&gt;&lt;br /&gt;We have heard junit test for unit testing and in most case selenium test would be written in unit test to take advantage of the reporting and other exising tool around unit test framework.&lt;br /&gt;&lt;br /&gt;Now comes the parallel-junit. This is a api from &lt;a href="mailto:kohsuke@dev.java.net"&gt;kohsuke&lt;/a&gt; who is also the core developer of hudson continious framework.&amp;nbsp; The framework allows &lt;i&gt;JUnit&lt;/i&gt; tests to run in parallel. This can be configured to run in a single machine as well.&lt;br /&gt;&lt;br /&gt;The architecture of parallel junit looks like this&lt;br /&gt;&lt;div class="separator" style="clear:both;text-align:center;"&gt;&lt;a href="https://parallel-junit.dev.java.net/figure.png" style="margin-left:1em;margin-right:1em;"&gt;&lt;img border="0" height="420" src="https://parallel-junit.dev.java.net/figure.png" width="390" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Conclusion: So think parallel, write parallel junit test(s) and use selenium grid for faster test results. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;references:&lt;br /&gt;&lt;a href="http://selenium-grid.seleniumhq.org/how_it_works.html"&gt;How Selenium Grid Works&lt;/a&gt;&lt;br /&gt;&lt;a href="http://selenium-grid.seleniumhq.org/run_the_demo.html"&gt;Run the Selenium Grid Demo&lt;/a&gt;&lt;br /&gt;&lt;a href="http://pariti.blogspot.com/2009/02/selenium-all-you-want-to-know.html"&gt;Another blog about selenium&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.jroller.com/carlossg/entry/enterprise_build_and_test_in2"&gt;Another blog about selenium&lt;/a&gt;&lt;br /&gt;&lt;a href="http://draft.blogger.com/www.ohloh.net/p/parallel-junit"&gt;Parallel Junit&lt;/a&gt;&lt;br /&gt;&lt;cite&gt;&lt;b&gt;&lt;/b&gt;&lt;/cite&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-498246615513951509?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/498246615513951509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/faster-faster-and-faster-how-fast-we_27.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/498246615513951509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/498246615513951509'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/faster-faster-and-faster-how-fast-we_27.html' title='faster, faster and faster ... how fast we can test'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6505354190584334193</id><published>2009-06-26T22:19:00.000+05:30</published><updated>2010-09-16T12:15:31.805+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='selenium-grid'/><category scheme='http://www.blogger.com/atom/ns#' term='selenium'/><category scheme='http://www.blogger.com/atom/ns#' term='parallel'/><title type='text'>selenium grid and remote control</title><content type='html'>i was experimenting with selenium-grid demo and had few issues. i use a gentoo machine as my desktop with firefox3.0.8 (in short ff3)&lt;br /&gt;&lt;br /&gt;the grid can be visualized like a parent and selenium remote control (rc) can be considered as children. The childrens are connected to parent (through some protocol looks like http, need more probing) and when we run the test the grid spawns different or same browser in multiple remote control (rc) Note: same machine can have more rc if required and if it has more power.&lt;br /&gt;&lt;br /&gt;will post more about selenium grid after i research about how to use selenium-grid in my work.&lt;br /&gt;&lt;br /&gt;reference:&lt;br /&gt;http://notetodogself.blogspot.com/2008/10/use-selenium-rc-in-firefox-3.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6505354190584334193?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6505354190584334193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/selenium-grid-and-remote-control_26.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6505354190584334193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6505354190584334193'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/selenium-grid-and-remote-control_26.html' title='selenium grid and remote control'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8553586866448213107</id><published>2009-06-08T21:41:00.000+05:30</published><updated>2010-09-16T12:15:31.787+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>getstarted with sonar</title><content type='html'>this is quiet handy for code coverage&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/2192809"&gt;Sonar, embrace Quality&lt;/a&gt; from &lt;a href="http://vimeo.com/user916714"&gt;Sonar Team&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8553586866448213107?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8553586866448213107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/getstarted-with-sonar_08.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8553586866448213107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8553586866448213107'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/getstarted-with-sonar_08.html' title='getstarted with sonar'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5152635808803738741</id><published>2009-06-08T21:04:00.000+05:30</published><updated>2010-09-16T12:15:31.773+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='openbravo'/><category scheme='http://www.blogger.com/atom/ns#' term='cse'/><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Search for openbravo related sites using google custom search</title><content type='html'>Link to Openbravo CSE &lt;a href="http://www.google.com/coop/cse?cx=000205499209034589502:tuhkmvnnhy0"&gt;Openbravo custom search &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Its been 3 months now am in Openbravo. In the past i was working in a smaller team where we could raise our hands and ask a question. This is not the case in openbravo (ofcouse i can raise my hands but no one will be there to answer me ;-) ) Across the organization we have lot of information that get processed and get updated in different place (eg: wiki.openbravo.com)&lt;br /&gt;&lt;br /&gt;Am quiet comfortable with google search and most of the time i end up using google site search http://www.google.com/sitesearch/ One advantage of google site search is it gives result specific to a particular site and it end's there.&lt;br /&gt;&lt;br /&gt;Now as i understand more and more, we have quiet a lot of thing that happens on a day-to-day basic. Some one will update (on or more of the following sites)&lt;br /&gt;&lt;br /&gt;- wiki dot openbravo dot com (documentation get created or updated)&lt;br /&gt;- code dot openbravo dot com (new codes get's commited)&lt;br /&gt;- issues dot openbravo dot com (new issues get reported, existing gets updated)&lt;br /&gt;- builds dot openbravo dot com (new build jobs, new releases)&lt;br /&gt;- health dot openbravo dot com (monitoring system health)&lt;br /&gt;- smoketest dot openbravo dot com&lt;br /&gt;- demo dot openbravo dot com&lt;br /&gt;- planet dot openbravo dot com (blog aggregrator)&lt;br /&gt;- forge dot openbravo dot com (where the openbravo community eat, lives and sleeps)&lt;br /&gt;- and list goes on (atleast 20 seperate URL's)&lt;br /&gt;&lt;br /&gt;This made me think of coming up with a custom google search (nothing new, google.com/cse) specific to Openbravo related sites&lt;br /&gt;&lt;br /&gt;Google custom search or cse http://www.google.com/coop/cse/ caters to this kind of challenges. Using google cse we can add those site(s) which we are interested and restrict result from specific site(s).&lt;br /&gt;&lt;br /&gt;Custom search also provides a managing console (to manage URL's) and has way to add more volunteeer who can submit URL's&lt;br /&gt;&lt;br /&gt;At the moment forge/wiki also has site specific search, but the search is limited to forge/wiki.&lt;br /&gt;&lt;br /&gt;A word of caution: This is what I did on my own and you can use it at the link below for now;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.com/coop/cse?cx=000205499209034589502:tuhkmvnnhy0"&gt; Openbravo custom search &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;We are working to see whether it should replace the custom google searches already available in the wiki and the forge.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5152635808803738741?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5152635808803738741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/search-for-openbravo-related-sites.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5152635808803738741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5152635808803738741'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/search-for-openbravo-related-sites.html' title='Search for openbravo related sites using google custom search'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8141886859010884311</id><published>2009-06-08T20:55:00.000+05:30</published><updated>2010-09-16T12:15:31.749+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>hudson presentation and apache.org ci servers</title><content type='html'>got a ppt from http://weblogs.java.net/blog/kohsuke/archive/2009/06/slides_for_the.html &lt;br /&gt;&lt;br /&gt;since am gonna use this internally in my team, i thought i will puslish it in docs.google.com &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;apache.org also has ci system in place&lt;br /&gt;http://ci.apache.org/&lt;br /&gt;&lt;br /&gt;hudson is here http://hudson.zones.apache.org/ with about 4 slaves (solaris + ubuntu)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8141886859010884311?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8141886859010884311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/hudson-presentation-and-apacheorg-ci_08.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8141886859010884311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8141886859010884311'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/hudson-presentation-and-apacheorg-ci_08.html' title='hudson presentation and apache.org ci servers'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6053292036977580166</id><published>2009-06-04T20:21:00.000+05:30</published><updated>2010-09-16T12:15:31.726+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Custom google search - Openbravo</title><content type='html'>I was facing problem in digging out information from openbravo and related sites. Result of the frustration made me create a google custom search. You can access it from &lt;a href="http://www.google.com/coop/cse?cx=000205499209034589502:tuhkmvnnhy0"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Please book mark it and use it for openbravo related search.  &lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6053292036977580166?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6053292036977580166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/custom-google-search-openbravo_04.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6053292036977580166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6053292036977580166'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/custom-google-search-openbravo_04.html' title='Custom google search - Openbravo'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8045228788025312044</id><published>2009-06-02T23:15:00.000+05:30</published><updated>2010-09-16T12:15:31.699+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>apache tomcat and php coexisting</title><content type='html'>@openbravo we have multiple system coexisting. One of the recent challenges was to take screenshot of smoke test and publish it. We already had a apache instance configured with mod_jk (redirecting to tomcat container). My goal (team's goal) was to get dlalbum (a static photo album generator) and tomcat running using same apache. The goal is achieved using &lt;i&gt;JkUnmount&lt;/i&gt; option in mod_jk&lt;br /&gt;&lt;br /&gt;the snapshot of the mod_jk.conf looks like this&lt;br /&gt;&lt;blockquote&gt;JkMount /* ajp13&lt;br /&gt;JkUnMount /*.php ajp13&lt;br /&gt;JkUnMount /dalbum/* ajp1&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;a href="http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html#Configuring%20Apache%20to%20serve%20static%20web%20application%20files"&gt;look here for apache tomcat mod_jk detailed documentation&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;every time we solve challenge's there is only one things that get repeated in my mind &lt;b&gt;Linux Rocks&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8045228788025312044?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8045228788025312044/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/06/apache-tomcat-and-php-coexisting_02.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8045228788025312044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8045228788025312044'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/06/apache-tomcat-and-php-coexisting_02.html' title='apache tomcat and php coexisting'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5850966625604324818</id><published>2009-05-20T22:37:00.000+05:30</published><updated>2010-09-16T12:15:31.668+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>photon+ the new tata indicom high speed broadband</title><content type='html'>in some kernel usbserial is missing, some one compiled it as part of kernel.  read hear about the issue &lt;a href="https://answers.launchpad.net/ubuntu/+source/linux/+question/65281"&gt;here&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;note: in some machines even if you do modprobe usbserial it shows no error.&lt;br/&gt;&lt;br/&gt;once the usbserial is available as module then just plug your device (check in dmesg | tail ) if its detected. do a wvdialconf and you are done.&lt;br/&gt;&lt;br/&gt;[sourcecode language="bash"]&lt;br/&gt;&lt;br/&gt;watch &amp;quot;dmesg | tail -n 50&amp;quot;&lt;br/&gt;&lt;br/&gt;[/sourcecode]&lt;br/&gt;&lt;br/&gt;reference: my wvdial.conf looks like this&lt;br/&gt;&lt;br/&gt;have fun using tata photon+&lt;br/&gt;&lt;br/&gt;[sourcecode language="bash"]&lt;br/&gt;&lt;br/&gt;gnuyoga@gnuyoga ~ $ cat /etc/wvdial.conf&lt;br/&gt;&lt;br/&gt;[Dialer Defaults]&lt;br/&gt;Init1 = ATZ&lt;br/&gt;Init2 = ATQ0 V1 E1 S0=0 &amp;amp;C1 &amp;amp;D2 +FCLASS=0&lt;br/&gt;Stupid Mode = 1&lt;br/&gt;ISDN = 0&lt;br/&gt;Modem Type = Analog Modem&lt;br/&gt;Phone = #777&lt;br/&gt;Modem = /dev/ttyUSB0&lt;br/&gt;Username = cdma&lt;br/&gt;Password = cdma&lt;br/&gt;#Baud = 9600&lt;br/&gt;gnuyoga@gnuyoga ~ $&lt;br/&gt;&lt;br/&gt;[/sourcecode]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5850966625604324818?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5850966625604324818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/05/photon-new-tata-indicom-high-speed_20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5850966625604324818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5850966625604324818'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/05/photon-new-tata-indicom-high-speed_20.html' title='photon+ the new tata indicom high speed broadband'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-9155643014343099926</id><published>2009-05-20T18:38:00.000+05:30</published><updated>2010-09-16T12:15:31.641+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>CI @ openbravo - an quick update</title><content type='html'>To view full screen click here &lt;a href="http://www.mindmeister.com/21589633"&gt;http://www.mindmeister.com/21589633&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-9155643014343099926?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/9155643014343099926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/05/ci-openbravo-quick-update_20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/9155643014343099926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/9155643014343099926'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/05/ci-openbravo-quick-update_20.html' title='CI @ openbravo - an quick update'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1365798072044305735</id><published>2009-05-20T00:03:00.000+05:30</published><updated>2010-09-16T12:15:31.571+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Google Gears in Firefox x64</title><content type='html'>&lt;h2 class="entry-title"&gt;&lt;/h2&gt;&lt;a href="http://gears.googlecode.com/issues/attachment?aid=865911321112980205&amp;amp;name=gears-linux-opt-0.5.13.0.xpi"&gt;http://gears.googlecode.com/issues/attachment?aid=865911321112980205&amp;amp;name=gears-linux-opt-0.5.13.0.xpi&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1365798072044305735?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1365798072044305735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/05/google-gears-in-firefox-x64_20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1365798072044305735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1365798072044305735'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/05/google-gears-in-firefox-x64_20.html' title='Google Gears in Firefox x64'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8219569712192462600</id><published>2009-05-09T19:34:00.000+05:30</published><updated>2010-09-16T12:15:31.554+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='procmail'/><category scheme='http://www.blogger.com/atom/ns#' term='mutt'/><category scheme='http://www.blogger.com/atom/ns#' term='gentoo'/><category scheme='http://www.blogger.com/atom/ns#' term='fetchmail'/><category scheme='http://www.blogger.com/atom/ns#' term='gmail'/><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>fetchmail &gt; procmail &gt; gmail &gt; mutt &gt; gentoo</title><content type='html'>fetchmailrc and gmail ssl pop3:&lt;br /&gt;http://blog.vinceliu.com/2007/11/changing-gmail-ssl-certificate.html&lt;br /&gt;http://download.gna.org/hpr/fetchmail/FAQ/gmail-pop-howto.html &lt;br /&gt;&lt;br /&gt;gmail certificate expiry: http://blog.vinceliu.com/2007/11/changing-gmail-ssl-certificate.html&lt;br /&gt;&lt;br /&gt;gentoo mutt: http://www.gentoo.org/doc/en/guide-to-mutt.xml&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8219569712192462600?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8219569712192462600/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/05/fetchmail-procmail-gmail-mutt-gentoo_09.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8219569712192462600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8219569712192462600'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/05/fetchmail-procmail-gmail-mutt-gentoo_09.html' title='fetchmail &amp;gt; procmail &amp;gt; gmail &amp;gt; mutt &amp;gt; gentoo'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1629874091313408000</id><published>2009-05-06T02:04:00.000+05:30</published><updated>2010-09-16T12:15:31.475+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='openbravo'/><category scheme='http://www.blogger.com/atom/ns#' term='ci'/><category scheme='http://www.blogger.com/atom/ns#' term='automate'/><title type='text'>Reducing Risk By Continuous Integration - Part1</title><content type='html'>&lt;span style="font-size:x-large;"&gt;A&lt;/span&gt;ccording to Martin Fowler,&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly...&lt;/i&gt;&lt;a href="http://martinfowler.com/articles/continuousIntegration.html" target="_blank"&gt;read more&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Openbravo has adopted to CI aka Continuous Integration&lt;i&gt; &lt;/i&gt;practices in the pursuit of developing usable software after every commit.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:x-large;"&gt;&lt;b&gt;T&lt;/b&gt;&lt;span style="font-size:small;"&gt;he show begins&lt;/span&gt;&lt;span style="font-size:small;"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;We have people from all over the world write code (in Java) &lt;/li&gt;&lt;ul&gt;&lt;li&gt;We have to make sure no bad code get committed to our system&lt;/li&gt;&lt;li&gt;The new code written adheres to coding standard&lt;/li&gt;&lt;li&gt;The code does not break any major functionality &lt;/li&gt;&lt;li&gt;The database is intact &lt;/li&gt;&lt;li&gt;There is no broken link &lt;/li&gt;&lt;li&gt;and list goes on ...&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;The code gets committed in a central repository (&lt;a href="http://code.openbravo.com/"&gt;code.openbravo.com&lt;/a&gt;)&lt;/li&gt;&lt;ul&gt;&lt;li&gt;We have to verify the license is correct &lt;/li&gt;&lt;li&gt; The file is not tampered or corrupted&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;We use Apache Ant scripts for code compilation (&lt;a href="http://ant.apache.org/" target="_blank"&gt;ant.apache.org&lt;/a&gt;)  &lt;/li&gt;&lt;ul&gt;&lt;li&gt;Compile source to byte code&lt;/li&gt;&lt;li&gt;Import / Export Database &lt;/li&gt;&lt;li&gt;Run Unit/Sanity/Smoke Test before compilation &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;span style="font-size:x-large;"&gt;I&lt;/span&gt;n simple term a CI tools helps us automates things&lt;br /&gt;&lt;ul&gt;&lt;li&gt;that we do daily/weekly/monthly/yearly &lt;/li&gt;&lt;li&gt;that has to be done on a specific condition say on code commit, on creating a new branch, etc&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;/ul&gt;&lt;br /&gt; &lt;b&gt;&lt;span style="font-size:x-large;"&gt;T&lt;/span&gt;&lt;/b&gt;he workflow of a CI tool is like this:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt; First, a developer commits code to the version control repository.  &lt;/li&gt;&lt;li&gt; CI server is polling this repository for changes (e.g., every few minutes/few commits). &lt;/li&gt;&lt;li&gt; Execute build scripts. &lt;/li&gt;&lt;li&gt; Feedback build results to members (e-mailing/feeds/irc). &lt;/li&gt;&lt;li&gt; Wait for next commit. &lt;/li&gt;&lt;/ul&gt;&lt;b&gt; &lt;span style="font-size:x-large;"&gt;A&lt;/span&gt; &lt;/b&gt;Word of Caution:&lt;br /&gt;We cannot assume that we are safe from integration problem, CI is a supporting tool in the development/release cycle to detect defects early. The participation of development / QA team plays a very important role. Educating the importance of &lt;i&gt;commit early commit often&lt;/i&gt; and detect errors early is the key. CI is not just a technical implementation; it is also an organizational and cultural implementation.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:x-large;"&gt;L&lt;/span&gt;&lt;/b&gt;ets talk about the benefit's:&lt;br /&gt;&lt;i&gt;Developers&lt;/i&gt;: making software integration a nonevent, you can focus on what you love the most, which i assume is software development ;-)&lt;br /&gt;&lt;i&gt;Release Management&lt;/i&gt;: Help create deploy able software multiple times in a day without waiting till the end of development sprint.&lt;br /&gt;&lt;i&gt;Testers/QA&lt;/i&gt;: Enable testers / QA to do incremental testing.&lt;br /&gt;&lt;i&gt;Managers&lt;/i&gt;: you can talk to customers with confidence and promise a working software.&lt;br /&gt;&lt;br /&gt;&lt;b&gt; &lt;span style="font-size:x-large;"&gt;C&lt;/span&gt;&lt;/b&gt;ontinuous Compilation Vs Continuous Integration&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a class="image" href="http://wiki.openbravo.com/wiki/Image:Continuous-ignorance.gif" title="Image:continuous-ignorance.gif"&gt;&lt;img alt="Image:continuous-ignorance.gif" src="http://wiki.openbravo.com/wiki/images/7/76/Continuous-ignorance.gif" border="0" height="187" width="500" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;&lt;span style="font-weight:normal;"&gt;&lt;span style="font-size:x-large;"&gt;L&lt;/span&gt;ets do it right: &lt;/span&gt;&lt;/h3&gt;The following questions will answer if we are doing our CI correctly:&lt;br /&gt;&lt;ul&gt;&lt;li&gt; All changes in code/db/conf pushed through SCM - cvs/subversion/mercurial/git &lt;/li&gt;&lt;li&gt; Is you project/module build automated - make/rake/ant + ivy/maven  &lt;/li&gt;&lt;li&gt; Do you write/execute tests as part of build - junit/xunit/selenium  &lt;/li&gt;&lt;li&gt; Do you have coding and design standards, if yes how are we enforcing it  - checkstyle/pmd/jdepends in case of Java &lt;/li&gt;&lt;li&gt; Is the Integration machine separate from development machine - to ensure clean build(s) &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;&lt;span style="font-size:x-large;"&gt;Q&lt;/span&gt;&lt;span style="font-size:small;"&gt;uestion to be asked: Do we produce a usable software on every commit to code repository.  &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; More about Continuous Integration &lt;a href="http://wiki.openbravo.com/wiki/Continuous_Integration"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;This is part 1 from the series of discussion about continiuous integration. In the future article i will talk about tools that we use and how we automate ! &lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1629874091313408000?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1629874091313408000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/05/reducing-risk-by-continuous-integration_06.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1629874091313408000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1629874091313408000'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/05/reducing-risk-by-continuous-integration_06.html' title='Reducing Risk By Continuous Integration - Part1'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1313518334192569665</id><published>2009-04-22T17:43:00.000+05:30</published><updated>2010-09-16T12:15:31.440+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>hmmmm, u want a repository manager, yes am talking about apache archiva</title><content type='html'>As we all know ASF (Apache Software Foundation) produces the most usable software in the open source world. Apache Archiva is no different.&lt;br /&gt;&lt;br /&gt;We have lots of build tools from ASF stable like &lt;span style="font-style:italic;"&gt;maven 1.0 &amp;amp; 2.0, ant&lt;/span&gt; and related tools like ivy.&lt;br /&gt;&lt;br /&gt;If you are planning to use one of them and you project has more than a module, then soon you would use archiva.&lt;br /&gt;&lt;br /&gt;what is apache archiva (excerpts from http://archiva.apache.org/)&lt;br /&gt;&lt;h2&gt;&lt;/h2&gt;&lt;blockquote&gt;&lt;h2&gt;&lt;span style="font-size:85%;"&gt;Archiva: The Build Artifact Repository Manager&lt;/span&gt;&lt;/h2&gt;       &lt;p&gt;&lt;span style="font-size:85%;"&gt;          Apache Archiva is an extensible repository management software that           helps taking care of your own personal or enterprise-wide build           artifact repository. It is the perfect companion for build tools such           as &lt;a href="http://maven.apache.org/"&gt;Maven&lt;/a&gt;,          &lt;a href="http://continuum.apache.org/"&gt;Continuum&lt;/a&gt;,          and &lt;a href="http://ant.apache.org/"&gt;ANT&lt;/a&gt;.        &lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;Take a tour &lt;a href="http://archiva.apache.org/docs/1.2/tour/index.html"&gt;here &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1313518334192569665?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1313518334192569665/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/04/hmmmm-u-want-repository-manager-yes-am_22.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1313518334192569665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1313518334192569665'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/04/hmmmm-u-want-repository-manager-yes-am_22.html' title='hmmmm, u want a repository manager, yes am talking about apache archiva'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3748216407062206198</id><published>2009-04-09T00:41:00.000+05:30</published><updated>2010-09-16T12:15:31.422+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='collaborate'/><category scheme='http://www.blogger.com/atom/ns#' term='jxta'/><category scheme='http://www.blogger.com/atom/ns#' term='p2p'/><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>the best open source software i have seen</title><content type='html'>Have you heard about p2p, perhaps you may not have heard but for sure you would have used a p2p software (eg: bit torrent, napster, music sharing software). They all use p2p protocol.&lt;br/&gt;&lt;br/&gt;&lt;span style="background-color:#ffffff;"&gt;Other day some one in my office came up with a problem where they wanted to access the resource (servers, desktop, laptop) inside the LAN overriding(or tunnelling) the firewall. I started going into details of problem and understood that we need a communication protocol which is device independent(mobile,laptop,servers,etc), os independent(windows, linux, mac), firewall independent (tunnel over any firewall). With the above options the only idea that came to me is p2p and natural choice is jxta. &lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="background-color:#ffffff;"&gt;Read about jxta here &lt;a href="https://jxta.dev.java.net/"&gt;https://jxta.dev.java.net/&lt;/a&gt;&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;Also i also came across an interesting product based on jxta. its called &lt;a title="collanos" href="http://www.collanos.com/en/products/workplace/tour"&gt;collanos&lt;/a&gt;, used for collaboration hence the name collanos. Now that we have collaboration tool next question is what does it take it to run. The answer to last question is we need to install collanos installed in our machine and in our peers machine ... that's it, no central server required. Since this is a p2p, peers talk to each other and synchronize with each other. Even if we are offline the moment we come online it starts synchronization.&lt;br/&gt;&lt;br/&gt;So decide and use jxta in your next project. Now download the jxta 2.5 document &lt;a href="http://download.java.net/jxta/jxta-jxse/2.5/"&gt;here&lt;/a&gt;. Other download &lt;a href="http://download.java.net/jxta/jxta-jxse/2.5/"&gt;here&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;Note: you might read in many places that jxta is dead and is no more developed. I would say this information is not true and jxta protocol is mature and stable enough and there was &lt;a href="https://jxta-jxse.dev.java.net/servlets/NewsItemView?newsItemID=5464"&gt;new committee&lt;/a&gt; selected recently with &lt;a href="http://download.java.net/jxta/"&gt;new releases&lt;/a&gt; announced.&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3748216407062206198?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3748216407062206198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/04/best-open-source-software-i-have-seen_09.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3748216407062206198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3748216407062206198'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/04/best-open-source-software-i-have-seen_09.html' title='the best open source software i have seen'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3764575538247168550</id><published>2009-03-26T17:21:00.000+05:30</published><updated>2010-09-16T12:15:31.401+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='tools'/><category scheme='http://www.blogger.com/atom/ns#' term='wink'/><title type='text'>lets wink ;-)</title><content type='html'>as the title say's lets wink, perhaps the author also wanted us to wink on the software that he created. wink is a available in both windows and linux flavour (little old version required gtk x.y.z version, check the docs)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt; the author say's Wink is a Tutorial and Presentation creation software, primarily aimed at creating tutorials on how to use software (like a tutor for MS-Word/Excel etc). Using Wink you can capture screenshots, add explanations boxes, buttons, titles etc and generate a highly effective tutorial for your users.&lt;/blockquote&gt;This is really useful for remote team's who work at different timing. Using this we can create tutorials and share it with others.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;Now lets &lt;a href="http://www.debugmode.com/wink/download.php"&gt;wink here&lt;/a&gt; ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3764575538247168550?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3764575538247168550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/03/lets-wink_26.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3764575538247168550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3764575538247168550'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/03/lets-wink_26.html' title='lets wink ;-)'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-4100826570491794475</id><published>2009-03-25T00:51:00.000+05:30</published><updated>2010-09-16T12:15:31.382+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='ci'/><category scheme='http://www.blogger.com/atom/ns#' term='ob'/><category scheme='http://www.blogger.com/atom/ns#' term='hudson'/><title type='text'>hudson distrubited builds</title><content type='html'>In the process of setting up CI for openbravo, i have realized the importance of distributed builds which will help us produce build results faster. Hudson as a tool for CI provides lot of plug ins and it well documented.&lt;br /&gt;&lt;br /&gt;more about distributed builds:&lt;br /&gt;&lt;a href="http://wiki.hudson-ci.org/display/HUDSON/Distributed+builds"&gt;Distributed builds&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.sonatype.com/people/2009/01/the-hudson-build-farm-experience-volume-i/"&gt;the-hudson-build-farm-experience-volume-i&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;other interesting link is about &lt;span style="font-size:small;"&gt;Instantly turning your Hudson cluster into a Hadoop cluster&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:small;"&gt;&lt;a href="http://weblogs.java.net/blog/kohsuke/archive/2009/03/instantly_turni.html"&gt;hudson - hadoop  - instantly_turning.html &lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-4100826570491794475?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/4100826570491794475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/03/hudson-distrubited-builds_25.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/4100826570491794475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/4100826570491794475'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/03/hudson-distrubited-builds_25.html' title='hudson distrubited builds'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5143114138743597313</id><published>2009-03-23T20:02:00.000+05:30</published><updated>2010-09-16T12:15:31.356+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>openoffice templates in services.openoffice.org</title><content type='html'>when i was working on openoffice i stumbled upon the following site which has lot of useful templates.&lt;br /&gt;go check it out ! &lt;br /&gt;&lt;br /&gt;http://templates.services.openoffice.org/en/mostpopular?page=1&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5143114138743597313?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5143114138743597313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/03/openoffice-templates-in_23.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5143114138743597313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5143114138743597313'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/03/openoffice-templates-in_23.html' title='openoffice templates in services.openoffice.org'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-8032035093913000225</id><published>2009-03-20T17:38:00.000+05:30</published><updated>2010-09-16T12:15:31.340+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>is ur code smelling ?</title><content type='html'>was reading about continuous integration and stumbled upon a new word Code Smell, which according to wikipedia is any symptom&lt;span style="text-decoration:underline;"&gt;&lt;/span&gt; in the source code&lt;span style="text-decoration:underline;"&gt;&lt;/span&gt; of a program that possibly indicates a deeper problem.&lt;br /&gt;&lt;br /&gt;more here&lt;br /&gt;http://en.wikipedia.org/wiki/Code_smell&lt;br /&gt;http://my.safaribooksonline.com/0201485672&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-8032035093913000225?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/8032035093913000225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/03/is-ur-code-smelling_20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8032035093913000225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/8032035093913000225'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/03/is-ur-code-smelling_20.html' title='is ur code smelling ?'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1656493851878608767</id><published>2009-03-20T17:27:00.000+05:30</published><updated>2010-09-16T12:15:31.322+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>its been a while i have blogged</title><content type='html'>i have relocated to chennai to work with a new client. am excited because i had a wish to work with open source company and finally i got a decent break i should say. my new id is sree [at] openbravo [dot] com&lt;br /&gt;&lt;br /&gt;Since i stay with my cousin near anna nagar, stay/food is taken care. Thanks to uma, our cook.&amp;nbsp; I have plans to bring in some sports in my daily routine. Perhaps anna sport club would be a good choice.&amp;nbsp; As of now my morning time is the time for my asana's and kriya. so far so good. Sometime i feel very low but that's part of nature.&lt;br /&gt;&lt;br /&gt;Openbravo is a OpenSource ERP product development company based in pamplona, spain. They have partnered with Essentia, another open source company based out of chennai. People out here were part of many other open source community development efforts, namely openoffice, subversion, etc...&lt;br /&gt;&lt;br /&gt;thou i have not started contributing much to it and am pretty clear about where am i heading towards ;-)&lt;br /&gt;&lt;br /&gt;The team out in spain looks pretty cool headed, now am in the process of setting the vision board for myself and the team. Will post that in the my next post.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;BTW openbravo uses scrum (an proven agile methodology) and it seems to work pretty decent for all of them. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;rest in the next post !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1656493851878608767?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1656493851878608767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/03/its-been-while-i-have-blogged_20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1656493851878608767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1656493851878608767'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/03/its-been-while-i-have-blogged_20.html' title='its been a while i have blogged'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-1130735219262496891</id><published>2009-02-15T15:30:00.000+05:30</published><updated>2010-09-16T12:15:31.303+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='focused'/><category scheme='http://www.blogger.com/atom/ns#' term='leadership'/><category scheme='http://www.blogger.com/atom/ns#' term='growth'/><title type='text'>Michael Angier shares The Top Ten Ways to Stay Focused on Your
Objectives</title><content type='html'>&lt;blockquote&gt;Growth and Leadership&lt;br /&gt;&lt;br /&gt;The Top Ten Ways to Stay Focused on Your Objectives&lt;br /&gt;by &lt;span style="font-weight:bold;"&gt;Michael Angier&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;People often ask me what I think are the most important keys to achieving successful outcomes. There are many, but the one thing that I see as being the most essential—and often ignored—is consistency.&lt;br /&gt;&lt;br /&gt;Any worthwhile, challenging goal requires sustained effort.Doing the things necessary for a day or two isn't hard. Where most people fall down is in stringing those days together and thereby creating the progress, the momentum, and ultimately, the successful accomplishment.&lt;br /&gt;&lt;br /&gt;What follows are ten ways to maintain your focus, your energy and your optimism while pursuing your goal. They've worked for me and they'll work for you. When I've employed all of these components, I've never failed to achieve my intention. &lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;more article here &lt;a href="http://delicious.com/gnuyoga/stayfocused"&gt;http://delicious.com/gnuyoga/stayfocused&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-1130735219262496891?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/1130735219262496891/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/02/michael-angier-shares-top-ten-ways-to_15.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1130735219262496891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/1130735219262496891'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/02/michael-angier-shares-top-ten-ways-to_15.html' title='Michael Angier shares The Top Ten Ways to Stay Focused on Your&#xA;Objectives'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-934490631447699686</id><published>2009-02-07T15:35:00.000+05:30</published><updated>2010-09-16T12:15:31.285+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='airtel gprs plans'/><title type='text'>Airtel India Mobile GPRS Plans</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Airtel Live&lt;/span&gt; - A user is able to do GPRS but the only site that is browsable is "&lt;span style="font-style:italic;"&gt;Airtel WAP" site.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Airtel ONline&lt;/span&gt; - one can browse any WAP site say http://wap.google.com/ (in above case only airtel wap)&lt;br /&gt;[Plan - as on date this is Rs 100/- monthly unlimited usage]&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Airtel Mobile &lt;/span&gt;- This option allows you to make use of your mobile phone to connect to your Laptop/PC and enable internet connection to your Laptop/PC&lt;br /&gt;[ Rs 399 a month for 100 MB of data and Rs 5 per MB thereafter, Rs 599 for 1 GB a month, Rs 799 for 1.5 GB a month.]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-934490631447699686?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/934490631447699686/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/02/airtel-india-mobile-gprs-plans_07.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/934490631447699686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/934490631447699686'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/02/airtel-india-mobile-gprs-plans_07.html' title='Airtel India Mobile GPRS Plans'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-804927382800248949</id><published>2009-02-06T19:37:00.000+05:30</published><updated>2010-09-16T12:15:31.270+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>online mindmapping tool / freemind</title><content type='html'>this is quiet interesting especially when u want to gets a bird view of things .... &lt;br /&gt;&lt;br /&gt;check out http://www.mindmeister.com &lt;br /&gt;&lt;br /&gt;feature that i find it useful &lt;br /&gt;- multiple concurrent edits &lt;br /&gt;- download as fremind mind map&lt;br /&gt;- nice look and feel&lt;br /&gt;&lt;br /&gt;feature that i would like to be added &lt;br /&gt;- the overall look is kind of pinkish .... option to theme it would be really great. &lt;br /&gt;- google gears integration&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-804927382800248949?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/804927382800248949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/02/online-mindmapping-tool-freemind_06.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/804927382800248949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/804927382800248949'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/02/online-mindmapping-tool-freemind_06.html' title='online mindmapping tool / freemind'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6144267370561635627</id><published>2009-02-05T19:44:00.000+05:30</published><updated>2010-09-16T12:15:31.251+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>so do u wanna build a google calender urself ?</title><content type='html'>&lt;table style="width:auto;"&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.co.in/lh/photo/LIknpKH-6MAP6c3gUvi-4w?authkey=w3B0kJ5uaMU&amp;amp;feat=embedwebsite"&gt;&lt;img src="http://lh4.ggpht.com/_hCFFSV1kPs8/SYqf7_YaQ8I/AAAAAAAARPM/_MhZ3X4wzEs/s400/Fullscreen%20capture%2005-02-2009%20134418.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif;font-size:11px;text-align:right;"&gt;From &lt;a href="http://picasaweb.google.co.in/gnuyoga/ScreenCaptures02?authkey=w3B0kJ5uaMU&amp;amp;feat=embedwebsite"&gt;Screen Captures&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;link here &lt;a href="http://www.future-earth.eu/gwt/eu.future.earth.gwt.MainDemoApp/MainDemoApp.html"&gt;http://www.future-earth.eu/gwt/eu.future.earth.gwt.MainDemoApp/MainDemoApp.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6144267370561635627?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6144267370561635627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/02/so-do-u-wanna-build-google-calender_05.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6144267370561635627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6144267370561635627'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/02/so-do-u-wanna-build-google-calender_05.html' title='so do u wanna build a google calender urself ?'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_hCFFSV1kPs8/SYqf7_YaQ8I/AAAAAAAARPM/_MhZ3X4wzEs/s72-c/Fullscreen%20capture%2005-02-2009%20134418.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7050971896410076582</id><published>2009-01-31T01:05:00.000+05:30</published><updated>2010-09-16T12:15:31.231+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>my 24hrs, time planner</title><content type='html'>a simple 24hrs time planner &lt;br /&gt;&lt;br /&gt;enter the time that u spend in 2nd column .... 4th column enter the time u would want to change and readjust .. make sure the total is not more than 24 hrs ;-) &lt;br /&gt;&lt;br /&gt;&lt;a href="http://spreadsheets.google.com/ccc?key=perFSt4QrSadgdhXyONXtFw"&gt;http://spreadsheets.google.com/ccc?key=perFSt4QrSadgdhXyONXtFw&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7050971896410076582?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7050971896410076582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/my-24hrs-time-planner_31.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7050971896410076582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7050971896410076582'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/my-24hrs-time-planner_31.html' title='my 24hrs, time planner'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6579470604299003476</id><published>2009-01-30T15:44:00.000+05:30</published><updated>2010-09-16T12:15:31.214+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='efficient'/><title type='text'>10 Efficient Ways to Save Time So You Can Follow Your Dreams by Neil
Patel</title><content type='html'>&lt;p&gt;Source: &lt;a href="http://www.quicksprout.com/2008/08/17/10-efficient-ways-to-save-time-so-you-can-follow-your-dreams/"&gt;http://www.quicksprout.com/2008/08/17/10-efficient-ways-to-save-time-so-you-can-follow-your-dreams/&lt;/a&gt;  thanks Neil Patel for writing a blog.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Time is something we all need more of, but how can you get more of it when there is only 24 hours in a day? Sadly there is no way to put more hours into each day, but what you can do is be more efficient with your time so you can follow your dreams. Here is how I was more efficient during my college years, which allowed me to run a business at the same time.&lt;span id="more-72"&gt;&lt;/span&gt;&lt;/p&gt; &lt;ol&gt;&lt;li&gt;&lt;strong&gt;Watch television on the web&lt;/strong&gt; – the problem with television is that you had to watch TV shows when they want you to watch them. Now with the technology advancements most entertainment channels like &lt;a href="http://www.nbc.com/Video/"&gt;NBC&lt;/a&gt;, &lt;a href="http://www.fox.com/fod/"&gt;FOX&lt;/a&gt;, &lt;a href="http://www.cwtv.com/cw-video"&gt;CW&lt;/a&gt;, and even a few cable networks let you watch your favorite TV shows &lt;a href="http://www.hulu.com/"&gt;online&lt;/a&gt;. It is free, you can watch the shows when you want to, and an hour show usually ends up being 45 minutes because there are a lot less commercials.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Sleep more&lt;/strong&gt; – if you learn to take &lt;a href="http://www.nap26.com/"&gt;power naps&lt;/a&gt;, you will have more energy throughout the day. Although you may lose some time from napping, you will be able to work more efficiently, which will give you more time.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Eat healthy meals&lt;/strong&gt; – changing your diet maybe hard at first, but &lt;a href="http://www.lifehack.org/articles/lifehack/over-100-quick-and-easy-healthy-foods.html"&gt;eating balanced meals&lt;/a&gt; will affect how you do your daily tasks. It will give you more energy so you can get your work done faster.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Do less work&lt;/strong&gt; – a lot of the things you do on a daily basis, don’t need to be done. Think about your &lt;a href="http://www.fourhourworkweek.com/"&gt;daily routine&lt;/a&gt; and cut out anything that isn’t essential. You will be surprised on how much time you are wasting.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Tell people what’s on your mind&lt;/strong&gt; – being honest and to the point is a great way to accomplish things quicker. When you beat around the bush things don’t get accomplished as fast. Just think about boardroom meetings, people are hesitant to say what is on their mind, which causes meetings to drag on forever.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Have some fun&lt;/strong&gt; – all work and no play is a good way to make you feel depressed. G&lt;a href="http://www.amazon.com/301-More-Ways-Have-Work/dp/157675118X"&gt;et some fun into your life&lt;/a&gt;, it will make you feel better, work harder, and hopefully make you want to accomplish your dreams.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Adjust your working hours&lt;/strong&gt; – many companies are very flexible on what times you can start and end work. If you work in a heavy traffic city such as Bangalore (neil i have changed it from LA)  you can easily spend an hour or 2 commuting to work during rush hour. But if you adjust your working hours you can cut back on driving time drastically.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Cut down on your communication methods&lt;/strong&gt; – cell phones, email, and &lt;a href="http://www.quicksprout.com/2008/04/12/aim-rules-of-engagement/"&gt;instant messaging&lt;/a&gt; are just a few tools you probably use to communicate with others. The problem with some of these methods is that they can easily be abused. For example if you log onto AIM, you may waste an hour talking to others about junk. Try and use communication tools like AIM only when you need them.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Don’t multi-task&lt;/strong&gt; – when you &lt;a href="http://www.shmula.com/375/multi-tasking-leads-to-lower-productivity"&gt;mult-task&lt;/a&gt; you tend to switch between what you should be doing and what you shouldn’t. By single tasking you are more likely to do what you are supposed to be doing.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Get rid of distractions&lt;/strong&gt; – things you may not be thinking of can be &lt;a href="http://zenhabits.net/2007/10/ugly-productivity-5-steps-to-a-distraction-free-workspace/"&gt;distractions&lt;/a&gt;. Whether it is gadgets or even checking emails every 5 minutes, this can all distract you. By getting rid or distractions or controlling them, you will have more time on your hands.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6579470604299003476?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6579470604299003476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/10-efficient-ways-to-save-time-so-you_30.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6579470604299003476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6579470604299003476'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/10-efficient-ways-to-save-time-so-you_30.html' title='10 Efficient Ways to Save Time So You Can Follow Your Dreams by Neil&#xA;Patel'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-397930387499805177</id><published>2009-01-29T15:43:00.000+05:30</published><updated>2010-09-16T12:15:31.194+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>SmartGWT, quick summary - gwt extension of smartclient</title><content type='html'>After developing initial prototype of a product in extgwt, we were debating on migrating to a more richer (in terms of features and license) framework. SmartGWT was naturally a good choice for this. The following are excerpts from various mailing list. &lt;span style="font-size:85%;"&gt;&lt;a href="http://www.smartclient.com/smartgwt/showcase"&gt;smartgwt showcase&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jroller.com/sjivan/entry/smartgwt_gwt_api_s_for"&gt;from jroller &lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:85%;"&gt;It has a very comprehensive and complete API with a consistent component model. It handles &lt;a href="http://www.smartclient.com/docs/6.5.1/a/b/c/go.html#class..ResultSet"&gt;full-cycle databinding&lt;/a&gt;, cache management and automatic cache updates, and adaptive use of client-side filtering and client-side sorting that kicks in once a dataset has been filtered down so that it fits in cache. All of this works with any data provider. Some other cool features include WebService bindings, &lt;a href="http://www.smartclient.com/index.jsp?skin=TreeFrog#treesEditing"&gt;TreeGrid&lt;/a&gt; and OLAP / Cube Grid.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;charts / vizualization&lt;br /&gt;&lt;blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;The SmartClient charting requires a commercial license of FusionCharts as well. I would actually suggest using GChart : &lt;a class="postlink" href="http://code.google.com/p/gchart/"&gt;http://code.google.com/p/gchart &lt;/a&gt;&lt;span class="postlink"&gt; demo&lt;span style="text-decoration:underline;"&gt; &lt;a href="http://gchart.googlecode.com/svn/trunk/live-demo/v2_4/com.googlecode.gchart.gchartdemoapp.GChartDemoApp/GChartDemoApp.html"&gt;here&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://code.google.com/docreader/#p=gwt-google-apis&amp;amp;s=gwt-google-apis&amp;amp;t=Visualization" id="z_bs" title="Google Visualization API Library"&gt;Google Visualization API Library&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;!-- m --&gt;&lt;!-- m --&gt;&lt;/blockquote&gt;commitment from isomorphic&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://www.smartclient.com/company/ISC_LGPL.pdf"&gt;&lt;span style="font-size:85%;"&gt;http://www.smartclient.com/company/ISC_LGPL.pdf&lt;/span&gt;&lt;/a&gt;&lt;/blockquote&gt;loading data to grid is now lot more easier&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_text"&gt;smartgwt grid data types&lt;br /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/blockquote&gt;there is  WSYWIG builder as well, wish we had a eclipse plugin&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.smartclient.com/technology/visualbuilder.jsp"&gt;smarclient visual builder&lt;/a&gt;&lt;/span&gt;&lt;/blockquote&gt;smartclient guys are listening&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;sanjiv.jeevan: I agree that the current skins don't live up to the high standard of the rest of the library in terms of API's and functionality. The users have spoken loud and clear regarding the skins and the SmartClient folks are treating this as high priority. I'm giving my feedback as well. In the mean time please continue evaluating SmartGWT knowing that the SmartClient folks are committed to creating high quality skins, even if it requires a little further polishing after the initial release based on user feedback. The key takeaway for me is that they are listening and responding to user feedback very promptly.&lt;/span&gt;&lt;/blockquote&gt;looks at the way things go it make sense to migrate to smartgwt before ur application is bloated.&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-397930387499805177?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/397930387499805177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/smartgwt-quick-summary-gwt-extension-of_29.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/397930387499805177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/397930387499805177'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/smartgwt-quick-summary-gwt-extension-of_29.html' title='SmartGWT, quick summary - gwt extension of smartclient'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2469862159515199504</id><published>2009-01-27T23:30:00.000+05:30</published><updated>2010-09-16T12:15:31.165+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>kilim</title><content type='html'>when i was looking for a message passing framework, i came across the following. its written by a phd grad.&lt;br /&gt;&lt;br /&gt;http://www.malhar.net/sriram/kilim/&lt;br /&gt;&lt;blockquote&gt;What is Kilim?&lt;br /&gt;&lt;br /&gt;Kilim is a message-passing framework for Java that provides ultra-lightweight threads and facilities for fast, safe, zero-copy messaging between these threads. &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2469862159515199504?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2469862159515199504/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/kilim_27.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2469862159515199504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2469862159515199504'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/kilim_27.html' title='kilim'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2770784209930241000</id><published>2009-01-27T22:51:00.000+05:30</published><updated>2010-09-16T12:15:31.152+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>do u like to keep ur inbox at zero, watch david allen, Getting Things
Done</title><content type='html'>firefox plugin for GTD: &lt;a href="http://www.gtdinbox.com"&gt;www.gtdinbox.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="350" width="425"&gt;&lt;br/&gt;      &lt;param name="movie" value="http://www.youtube.com/v/Qo7vUdKTlhk&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;br/&gt;      &lt;param name="wmode" value="transparent"&gt;&lt;br/&gt;      &lt;embed src="http://www.youtube.com/v/Qo7vUdKTlhk&amp;amp;hl=en&amp;amp;fs=1;rel=0" type="application/x-shockwave-flash" wmode="transparent" height="350" width="425"&gt;&lt;br/&gt;      &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2770784209930241000?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2770784209930241000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/do-u-like-to-keep-ur-inbox-at-zero.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2770784209930241000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2770784209930241000'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/do-u-like-to-keep-ur-inbox-at-zero.html' title='do u like to keep ur inbox at zero, watch david allen, Getting Things&#xA;Done'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5461959440811072915</id><published>2009-01-27T16:30:00.000+05:30</published><updated>2010-09-16T12:15:31.131+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>can u beat him, Dmitri Gaskin drinks code with his cereal for breakfast
every morning. He's a jQuery whiz and a Drupal know-it-all. He is only
12 !!!</title><content type='html'>&lt;object height="350" width="425"&gt;&lt;br/&gt;      &lt;param name="movie" value="http://www.youtube.com/v/8mwKq7_JlS8&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;br/&gt;      &lt;param name="wmode" value="transparent"&gt;&lt;br/&gt;      &lt;embed src="http://www.youtube.com/v/8mwKq7_JlS8&amp;amp;hl=en&amp;amp;fs=1;rel=0" type="application/x-shockwave-flash" wmode="transparent" height="350" width="425"&gt;&lt;br/&gt;      &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5461959440811072915?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5461959440811072915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/can-u-beat-him-dmitri-gaskin-drinks_27.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5461959440811072915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5461959440811072915'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/can-u-beat-him-dmitri-gaskin-drinks_27.html' title='can u beat him, Dmitri Gaskin drinks code with his cereal for breakfast&#xA;every morning. He&amp;#39;s a jQuery whiz and a Drupal know-it-all. He is only&#xA;12 !!!'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-682884109250685435</id><published>2009-01-26T21:37:00.000+05:30</published><updated>2010-09-16T12:15:31.115+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Scrum et al, Speaker:Ken Schwaber</title><content type='html'>&lt;object height="350" width="425"&gt;&lt;br/&gt;      &lt;param name="movie" value="http://www.youtube.com/v/IyNPeTn8fpo&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;br/&gt;      &lt;param name="wmode" value="transparent"&gt;&lt;br/&gt;      &lt;embed src="http://www.youtube.com/v/IyNPeTn8fpo&amp;amp;hl=en&amp;amp;fs=1;rel=0" type="application/x-shockwave-flash" wmode="transparent" height="350" width="425"&gt;&lt;br/&gt;      &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-682884109250685435?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/682884109250685435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/scrum-et-al-speakerken-schwaber_26.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/682884109250685435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/682884109250685435'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/scrum-et-al-speakerken-schwaber_26.html' title='Scrum et al, Speaker:Ken Schwaber'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5108646779348556215</id><published>2009-01-25T03:17:00.000+05:30</published><updated>2010-09-16T12:15:31.102+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Applets Reloaded: the New Java Plug-In</title><content type='html'>&lt;object height="350" width="425"&gt;&lt;br/&gt;      &lt;param name="movie" value="http://www.youtube.com/v/4wi9Q1x8j7E&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;br/&gt;      &lt;param name="wmode" value="transparent"&gt;&lt;br/&gt;      &lt;embed src="http://www.youtube.com/v/4wi9Q1x8j7E&amp;amp;hl=en&amp;amp;fs=1;rel=0" type="application/x-shockwave-flash" wmode="transparent" height="350" width="425"&gt;&lt;br/&gt;      &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5108646779348556215?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5108646779348556215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/applets-reloaded-new-java-plug-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5108646779348556215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5108646779348556215'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/applets-reloaded-new-java-plug-in.html' title='Applets Reloaded: the New Java Plug-In'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-5167493606174123648</id><published>2009-01-24T23:38:00.000+05:30</published><updated>2010-09-16T12:15:31.080+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>first netty code</title><content type='html'>Step 1: download netty &lt;br /&gt;Step 2: configure ur fav editor, i used eclipse or use ant or maven &lt;br /&gt;Step 3: write DiscardServer.java&lt;br /&gt;&lt;blockquote&gt;package org.jboss.netty.example.discard;&lt;br /&gt;&lt;br /&gt;import java.net.InetSocketAddress;&lt;br /&gt;import java.util.concurrent.Executors;&lt;br /&gt;&lt;br /&gt;import org.jboss.netty.bootstrap.ServerBootstrap;&lt;br /&gt;import org.jboss.netty.channel.ChannelFactory;&lt;br /&gt;import org.jboss.netty.channel.ChannelPipeline;&lt;br /&gt;import org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory;&lt;br /&gt;&lt;br /&gt;public class DiscardServer {&lt;br /&gt;&lt;br /&gt;    public static void main(String[] args) throws Exception {&lt;br /&gt;        ChannelFactory factory =&lt;br /&gt;            new NioServerSocketChannelFactory(&lt;br /&gt;                    Executors.newCachedThreadPool(),&lt;br /&gt;                    Executors.newCachedThreadPool());&lt;br /&gt;&lt;br /&gt;        ServerBootstrap bootstrap = new ServerBootstrap(factory);&lt;br /&gt;&lt;br /&gt;        DiscardServerHandler handler = new DiscardServerHandler();&lt;br /&gt;        ChannelPipeline pipeline = bootstrap.getPipeline();&lt;br /&gt;        pipeline.addLast("handler", handler);&lt;br /&gt;&lt;br /&gt;        bootstrap.setOption("child.tcpNoDelay", true);&lt;br /&gt;        bootstrap.setOption("child.keepAlive", true);&lt;br /&gt;&lt;br /&gt;        bootstrap.bind(new InetSocketAddress(8080));&lt;br /&gt;    }&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;Step4: write DiscardServerHandler.java&lt;br /&gt;&lt;blockquote&gt;package org.jboss.netty.example.discard;&lt;br /&gt;&lt;br /&gt;import org.jboss.netty.buffer.ChannelBuffer;&lt;br /&gt;import org.jboss.netty.channel.Channel;&lt;br /&gt;import org.jboss.netty.channel.ChannelHandlerContext;&lt;br /&gt;import org.jboss.netty.channel.ChannelPipelineCoverage;&lt;br /&gt;import org.jboss.netty.channel.ExceptionEvent;&lt;br /&gt;import org.jboss.netty.channel.MessageEvent;&lt;br /&gt;import org.jboss.netty.channel.SimpleChannelHandler;&lt;br /&gt;&lt;br /&gt;@ChannelPipelineCoverage("all")&lt;br /&gt;public class DiscardServerHandler extends SimpleChannelHandler {&lt;br /&gt;&lt;br /&gt; @Override&lt;br /&gt; public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) {&lt;br /&gt;  ChannelBuffer buf = (ChannelBuffer) e.getMessage();&lt;br /&gt;  while (buf.readable()) {&lt;br /&gt;   System.out.println((char) buf.readByte());&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; @Override&lt;br /&gt; public void exceptionCaught(ChannelHandlerContext ctx, ExceptionEvent e) {&lt;br /&gt;  e.getCause().printStackTrace();&lt;br /&gt;&lt;br /&gt;  Channel ch = e.getChannel();&lt;br /&gt;  ch.close();&lt;br /&gt; }&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Step 5: ready to go&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-5167493606174123648?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/5167493606174123648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/first-netty-code_24.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5167493606174123648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/5167493606174123648'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/first-netty-code_24.html' title='first netty code'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-3664995802109883727</id><published>2009-01-22T04:21:00.000+05:30</published><updated>2010-09-16T12:15:31.052+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Startup event calender</title><content type='html'>are u looking for startup events in india. the following might help&lt;br /&gt;&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://ecosystem.pluggd.in/index.php/TechEvents"&gt;&lt;img src="http://lh3.ggpht.com/_hCFFSV1kPs8/SXdUwDrrS8I/AAAAAAAARHY/CDFHbx3_gwQ/s400/Fullscreen%20capture%201212009%20102843%20PM.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif;font-size:11px;text-align:right;"&gt;From &lt;a href="http://picasaweb.google.com/gnuyoga/DropBox?authkey=wL7mGXML3Y8&amp;amp;feat=embedwebsite"&gt;Drop Box&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-3664995802109883727?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/3664995802109883727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/startup-event-calender_22.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3664995802109883727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/3664995802109883727'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/startup-event-calender_22.html' title='Startup event calender'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_hCFFSV1kPs8/SXdUwDrrS8I/AAAAAAAARHY/CDFHbx3_gwQ/s72-c/Fullscreen%20capture%201212009%20102843%20PM.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-539036868945336203</id><published>2009-01-21T14:48:00.000+05:30</published><updated>2010-09-16T12:15:31.033+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>MINA and Netty</title><content type='html'>These days i think a lot on High performance / high available / scalable servers and naturally i landed in apache MINA. Happened to figure out trustin is the main contributor and he is no more working with Apache MINA because of some internal politics. Also know that there are lots of people in the community that can take MINA forward, we will have to wait and watch how it moving ahead.&lt;br /&gt;&lt;br /&gt;He has started a code re-write of MINA and its called Netty hosted under jboss umberalla.&lt;br /&gt;&lt;br /&gt;http://www.jboss.org/netty/index.html&lt;br /&gt;&lt;br /&gt;let me try out the few example and write more about the same.&lt;br /&gt;&lt;br /&gt;there is decent documentation on using &lt;a href="http://code.google.com/apis/protocolbuffers/docs/overview.html"&gt;google protocol buffer&lt;/a&gt; using &lt;a href="http://www.jboss.org/netty/index.html"&gt;netty&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2 class="title"&gt;&lt;a id="d0e20"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;blockquote&gt;&lt;h2 class="title"&gt;&lt;a id="d0e20"&gt;The Problem&lt;/a&gt;&lt;/h2&gt;&lt;p&gt; &lt;a id="d0e20"&gt;      Nowadays we use general purpose applications or libraries to communicate       with each other.  For example, we often use an open source HTTP client       library to retrieve information from an open source web server and to       invoke a remote procedure call via web services.     &lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;a id="d0e20"&gt;      However, a general purpose protocol or its implementation sometimes        does not scale very well.  It is like we don't use a general purpose       HTTP server to exchange huge files, e-mail messages, and near-realtime       messages such as financial information and multiplayer game data.       What's required is a highly optimized protocol implementation which is       dedicated to a special purpose.  For example, you might want to       implement an HTTP server which is optimized for AJAX-based chat       application.  You could even want to design and implement a whole new       protocol which is precisely tailored to your need.     &lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;a id="d0e20"&gt;      Another inevitable case is when you have to deal with a legacy       proprietary protocol to ensure the interoperability with an old system.       What matters in this case is how quickly we can implement that protocol       while not sacrificing the stability and performance of the resulting       application.&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a id="d0e20"&gt;extracted from netty documentation&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-539036868945336203?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/539036868945336203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2009/01/mina-and-netty_21.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/539036868945336203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/539036868945336203'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2009/01/mina-and-netty_21.html' title='MINA and Netty'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-2453628079965448142</id><published>2008-12-14T19:41:00.000+05:30</published><updated>2010-09-16T12:15:31.017+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>bobby da dabba</title><content type='html'>&lt;a href="http://gnuyoga.files.wordpress.com/2008/12/boddydadabba1.jpg"&gt;&lt;img alt="" src="http://gnuyoga.files.wordpress.com/2008/12/boddydadabba1.jpg?w=300" border="0" /&gt;&lt;/a&gt; &lt;br /&gt;following is a copy-paste from epaper.timesofindia.com&lt;br /&gt;&lt;br /&gt;&lt;em&gt;'Thirty minutes, Maharaj,' says Bobby, almost regretfully, that he can't straightaway seat you at a table and command his army of waiters to ply you with a tall glass of buttermilk to kick off a P u n j ab i meal that'll leave you like a sated sow at a trough.&lt;br /&gt;&lt;br /&gt;Bobby da Dhaba is an unpretentious place next to the gurudwara in Ulsoor, so low-key that it doesn't even have a nameboard announcing its presence. In this age of in-your-face self-promotion, it's a refreshing change. As are the clusters of hungry people waiting outside to enter a hovelish restaurant, speaking volumes of their commitment to their pursuit of good food.    &lt;br /&gt;&lt;br /&gt;For that's what this dhaba is all about — honest-to-goodness food that our moms would have made if they were Punjabi.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;If u like to eat a healthy dinner, please visit this place&lt;div style='clear:both;text-align:LEFT;'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-2453628079965448142?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/2453628079965448142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2008/12/bobby-da-dabba_14.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2453628079965448142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/2453628079965448142'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2008/12/bobby-da-dabba_14.html' title='bobby da dabba'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-9080925449413859120</id><published>2008-12-14T19:32:00.000+05:30</published><updated>2010-09-16T12:15:31.003+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>internet connection speed test</title><content type='html'>Sititing at home and working, suddenly realized my speed is really slow (in bps)&lt;a href="http://gnuyoga.files.wordpress.com/2008/12/fullscreencapture1214200812542pm1.jpg"&gt;&lt;img alt="" src="http://gnuyoga.files.wordpress.com/2008/12/fullscreencapture1214200812542pm1.jpg?w=300" border="0" /&gt;&lt;/a&gt; ... was remembering my good old days back in college sitting with dial-up-connection (modem used to make loud noise till it get connected)&lt;br /&gt;&lt;br /&gt;Statistics that is displayed in speedtest is awesome.&lt;br /&gt;&lt;br /&gt;check it out !&lt;br /&gt;&lt;br /&gt;try it out speedtest.net&lt;div style='clear:both;text-align:LEFT;'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-9080925449413859120?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/9080925449413859120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2008/12/internet-connection-speed-test_14.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/9080925449413859120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/9080925449413859120'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2008/12/internet-connection-speed-test_14.html' title='internet connection speed test'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-475293937238740504</id><published>2008-12-03T01:27:00.000+05:30</published><updated>2010-09-16T12:15:30.986+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>GTD</title><content type='html'>the famous GTD mind map &lt;a href="http://gnuyoga.files.wordpress.com/2008/12/workflowdiagram1.jpg"&gt;&lt;img alt="" src="http://gnuyoga.files.wordpress.com/2008/12/workflowdiagram1.jpg?w=300" border="0" /&gt;&lt;/a&gt;&lt;div style='clear:both;text-align:RIGHT;'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-475293937238740504?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/475293937238740504/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2008/12/gtd_03.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/475293937238740504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/475293937238740504'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2008/12/gtd_03.html' title='GTD'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7465136153739040766</id><published>2008-11-28T00:58:00.000+05:30</published><updated>2010-09-16T12:15:30.970+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='picasa'/><category scheme='http://www.blogger.com/atom/ns#' term='foto'/><category scheme='http://www.blogger.com/atom/ns#' term='ants'/><title type='text'>after a long time</title><content type='html'>&lt;span class="Apple-style-span" style="border-collapse:collapse;color:rgb(102,102,102);font-family:Arial;font-size:11px;white-space:pre;"&gt;&lt;table style="width:194px;"&gt;&lt;tr&gt;&lt;td align="center" style="height:194px;background:url('http://picasaweb.google.com/f/img/transparent_album_background.gif') no-repeat left;"&gt;&lt;a href="http://picasaweb.google.com/gnuyoga/AfterALongTime#"&gt;&lt;img src="http://lh4.ggpht.com/_hCFFSV1kPs8/SS6W-jls_NE/AAAAAAAAOY8/x9I2yNK8kgI/s160-c/AfterALongTime.jpg" width="160" height="160" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="text-align:center;font-family:arial,sans-serif;font-size:11px;"&gt;&lt;a href="http://picasaweb.google.com/gnuyoga/AfterALongTime#" style="color:#4D4D4D;font-weight:bold;text-decoration:none;"&gt;after a long time&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse:collapse;color:rgb(102,102,102);font-family:Arial;font-size:11px;white-space:pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse:collapse;color:rgb(102,102,102);font-family:Arial;font-size:11px;white-space:pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse:collapse;color:rgb(102,102,102);font-family:Arial;font-size:11px;white-space:pre;"&gt;this is a collection of random pictures that i have clicked over a period of 6 months. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse:collapse;color:rgb(102,102,102);font-family:Arial;font-size:11px;white-space:pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="border-collapse:collapse;color:rgb(102,102,102);font-family:Arial;font-size:11px;white-space:pre;"&gt;if u like please drop in ur comments. &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7465136153739040766?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7465136153739040766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2008/11/after-long-time_28.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7465136153739040766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7465136153739040766'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2008/11/after-long-time_28.html' title='after a long time'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_hCFFSV1kPs8/SS6W-jls_NE/AAAAAAAAOY8/x9I2yNK8kgI/s72-c/AfterALongTime.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-6386190280937681343</id><published>2008-10-12T20:39:00.000+05:30</published><updated>2010-09-16T12:15:30.931+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>GWT Hosted mode in firefox/linux</title><content type='html'>Steps to get GWT hosted mode in firefox, am not sure how stable is this. what i understand from the mailing list is that its usable.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;svn checkout http://google-web-toolkit.googlecode.com/svn/branches/oophm google-web-toolkit-branches-oophm-read-only&lt;/li&gt;&lt;li&gt;refer http://bugs.sakaiproject.org/confluence/display/GWT/Building+GWT+Trunk&lt;br /&gt;(instead of trunk we will have to use branches-oophm)&lt;/li&gt;&lt;li&gt;once the building is complete under the dist folder u will find the OS specific jars (gwt-linux-0.0.0.tar.bz2)&lt;/li&gt;&lt;li&gt;unzip the above file (i use /opt/)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;under plugins folder u will find firefox/oophm.xpi (to install this just open this file in firefox using ctrl-o and select this file, restart firefox after installation)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;use the new jars (i use maven, so do mvn install / deploy accordingly)&lt;/li&gt;&lt;li&gt;fire the GWTShell&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/G7vFgUUEuuk315BamfEYFw?authkey=qX823n0RO0w"&gt;&lt;img src="http://lh6.ggpht.com/gnuyoga/SPG-VkGKFtI/AAAAAAAAONI/c4KShe5-9E4/s400/gwt%20hosted%20mode%20with%20firefox%20plugin.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif;font-size:11px;text-align:right;"&gt;From &lt;a href="http://picasaweb.google.com/gnuyoga/Share?authkey=qX823n0RO0w"&gt;share&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;GWT Hosted mode, firefox, firebug&lt;br /&gt;&lt;table style="width:auto;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/rXdiyh_nLaXzZA_RJ-I3Yg?authkey=qX823n0RO0w"&gt;&lt;img src="http://lh6.ggpht.com/gnuyoga/SPHB-vsyzcI/AAAAAAAAONo/lEHTSCA7uKM/s400/GWT%20oophm%20plugin%20along%20with%20firebug.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif;font-size:11px;text-align:right;"&gt;From &lt;a href="http://picasaweb.google.com/gnuyoga/Share?authkey=qX823n0RO0w"&gt;share&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-6386190280937681343?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/6386190280937681343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2008/10/gwt-hosted-mode-in-firefoxlinux_12.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6386190280937681343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/6386190280937681343'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2008/10/gwt-hosted-mode-in-firefoxlinux_12.html' title='GWT Hosted mode in firefox/linux'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/gnuyoga/SPG-VkGKFtI/AAAAAAAAONI/c4KShe5-9E4/s72-c/gwt%20hosted%20mode%20with%20firefox%20plugin.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1817040094544215804.post-7632725251517411810</id><published>2008-09-25T05:10:00.000+05:30</published><updated>2010-09-16T12:15:30.915+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='1'/><title type='text'>Tata indicom plug to surf USB, usage log</title><content type='html'>&lt;p&gt;i use tata indicom plug to surf USB connection at home. its a prepaid connection and is charged based on used minutes. i wanted usage log and idle time out settings. Wrote the following script. The script will record the usage date and usage time. Since its a bash script we can extend to handle other task like auto disconnect after 10 minutes, etc. I dont mind gettting an mail incase if you find this useful ;-) &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://sites.google.com/a/slashgnu.co.in/sree/share/tata_indicom_usage_log.sh?attredirects=0"&gt;download the script here&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1817040094544215804-7632725251517411810?l=www.gnuyoga.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.gnuyoga.in/feeds/7632725251517411810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.gnuyoga.in/2008/09/tata-indicom-plug-to-surf-usb-usage-log_25.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7632725251517411810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1817040094544215804/posts/default/7632725251517411810'/><link rel='alternate' type='text/html' href='http://www.gnuyoga.in/2008/09/tata-indicom-plug-to-surf-usb-usage-log_25.html' title='Tata indicom plug to surf USB, usage log'/><author><name>gnuyoga</name><uri>http://www.blogger.com/profile/15791561733159572406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/-K0iwrvPnfTE/TZrbApzRo_I/AAAAAAAAV3U/bupms2_SFaM/s1600/e5aab46c18e6972ac12870d105a94c01.png'/></author><thr:total>0</thr:total></entry></feed>
