<?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-22187417</id><updated>2012-02-17T08:11:08.929+05:30</updated><category term='Python'/><category term='J2ME'/><category term='Struts'/><category term='LAMP'/><category term='MySQL'/><category term='Performance'/><category term='birthday'/><category term='online tools'/><category term='Google reader'/><category term='patterns'/><category term='Cricket'/><category term='videos'/><category term='open source'/><category term='Java'/><category term='Web 2.0'/><category term='IDE'/><category term='Symbian'/><category term='Google'/><category term='Google video'/><category term='EJB'/><category term='PHP'/><category term='Ruchith'/><category term='TDD'/><category term='Flash lite'/><category term='mobile applications'/><category term='JSF'/><category term='Spring'/><category term='Apache'/><category term='Android'/><category term='J2EE'/><category term='Unit Testing'/><category term='Google gears'/><category term='screenshots'/><category term='SAAS'/><category term='Scalability'/><title type='text'>Ruchith's blog</title><subtitle type='html'>Sharing my interests, visits, work and something useful for others</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-22187417.post-8082744716094856465</id><published>2007-11-06T17:20:00.000+05:30</published><updated>2008-12-11T08:30:09.194+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile applications'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Google enters into mobile</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_My8VtRTLD60/RzBR72YwZ8I/AAAAAAAAABg/y8scYUIybPU/s1600-h/gphone.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_My8VtRTLD60/RzBR72YwZ8I/AAAAAAAAABg/y8scYUIybPU/s200/gphone.jpg" alt="" id="BLOGGER_PHOTO_ID_5129690064228476866" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Google takes a big step forward by moving into mobile and introducing Open Hanset Alliance(&lt;span style="font-weight: bold;"&gt;OHA&lt;/span&gt;) which includes 34 powerful companies such as Qualcomm, Motorola, Samsung, T-Mobile, Sprint, Skype, LG, HTC, KDDI, DoCoMo and China Mobile,etc. Goal of this alliance is to develop an &lt;span style="font-style: italic;"&gt;open source operating system&lt;/span&gt; for mobile phones, in other words "&lt;span style="font-weight: bold;"&gt;an alternative to Symbian OS, Windows mobile and iPhone&lt;/span&gt;". (I'm sure Apple will think about opening their OS and Symbian too).&lt;br /&gt;&lt;br /&gt;Google's mobile  OS will be called &lt;span style="font-size:130%;"&gt;"&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Android&lt;/span&gt;&lt;/span&gt;" (No "Google" word/logo attached at all .... how humble they are  ....  ) which is an open source OS built on &lt;span style="font-weight: bold;"&gt;Linux&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;and Java&lt;/span&gt;.&lt;br /&gt;Since this mobile OS is available for free of charge for OEM vendors, this will be a major hit for proprietary mobile OS vendors.&lt;br /&gt;Further it will give more flexible environment for mobile application developers.&lt;br /&gt;And I'm sure ......... this will lead to come up with some more mobile OS  distro like in linux desktop.&lt;br /&gt;&lt;br /&gt;Surprise ........... this &lt;span style="font-weight: bold;"&gt;Android SDK&lt;/span&gt; will be available from Nov 12th, and mobile phones will be available from mid of 2008 [Not sure how fast it going to come here , since it will be launched initially USA, Europe, Japan and China ].&lt;br /&gt;&lt;br /&gt;I think this is a great news to mobile application development companies like us, it will eliminate some of the barrier currently we have because of the closeness of the mobile operating systems.&lt;br /&gt;&lt;br /&gt;Finally.........mobile application developers are getting more flexibility and more open environment.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Sources &lt;/span&gt;:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;image from http://www.dailytechrag.com&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;info from &lt;a href="http://www.nytimes.com/2007/11/05/technology/05cnd-gphone.html?_r=3&amp;amp;ref=technology&amp;amp;oref=slogin&amp;amp;oref=slogin&amp;amp;oref=slogin"&gt;here&lt;/a&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/22187417-8082744716094856465?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/8082744716094856465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=8082744716094856465&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/8082744716094856465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/8082744716094856465'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2007/11/google-enters-into-mobile.html' title='Google enters into mobile'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_My8VtRTLD60/RzBR72YwZ8I/AAAAAAAAABg/y8scYUIybPU/s72-c/gphone.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-2097430104805157691</id><published>2007-08-09T16:54:00.000+05:30</published><updated>2007-08-09T18:02:13.186+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scalability'/><category scheme='http://www.blogger.com/atom/ns#' term='SAAS'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Web apps scalability</title><content type='html'>Along with web 2.0, web traffic is getting increased day  by day. Individual users as well as enterprises are getting into the the web eyeing on the SAAS type of application and moving away form the desktop apps.&lt;br /&gt;The amount of traffic generated by these apps are tremendous, Just to name few&lt;br /&gt;&lt;ul&gt;&lt;li&gt; Over 100 million video downloads per day from &lt;a href="http://www.youtube.com/"&gt;&lt;span style="font-weight: bold;"&gt;YouTube&lt;/span&gt;&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;More than 4 billion queries per day on &lt;a href="http://www.flickr.com/"&gt;&lt;span style="font-weight: bold;"&gt;FlickR&lt;/span&gt;&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Do I need to mention &lt;a href="http://www.google.com/"&gt;&lt;span style="font-weight: bold;"&gt;Google&lt;/span&gt;&lt;/a&gt;, .........&lt;/li&gt;&lt;/ul&gt;How these apps handle the traffic, whats the architecture behind, what are the technologies empower them .....  are some of the questions come to our mind,&lt;br /&gt;&lt;br /&gt;I came across a good &lt;a href="http://highscalability.com/"&gt;web site&lt;/a&gt; with some of the very good informations about these apps, answering above questions. It talks about how much scalable they are , and how it has been achieved and the technologies are being used.&lt;br /&gt;&lt;br /&gt;Google Architecture info - &lt;a href="http://highscalability.com/google-architecture"&gt;here &lt;/a&gt;&lt;br /&gt;YouTube Architecture - &lt;a href="http://highscalability.com/youtube-architecture"&gt;here&lt;/a&gt;&lt;br /&gt;FlickR Architecture - &lt;a href="http://highscalability.com/flickr-architecture"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-2097430104805157691?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://highscalability.com/' title='Web apps scalability'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/2097430104805157691/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=2097430104805157691&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/2097430104805157691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/2097430104805157691'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2007/08/web-apps-scalability.html' title='Web apps scalability'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-1800384669834515521</id><published>2007-07-17T14:21:00.000+05:30</published><updated>2007-07-20T09:14:45.344+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='LAMP'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Installing LAMP -  tips</title><content type='html'>Thought of sharing some experience I came across when installing LAMP stack. My intension is not to give step by step procedure for "How to install LAMP stack" [LAMP it self provides very good documentation for that ], But some of the issues you may come across.&lt;br /&gt;My LAMP stack compose with :&lt;br /&gt;  - &lt;span style="font-weight: bold;"&gt;L&lt;/span&gt;inux [Fedora 5]   ;)  yeah too old.  Should have gone for 7&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;#uname -a&lt;br /&gt;Linux petronas 2.6.15-1.2054_FC5smp #1 SMP Tue Mar 14 16:05:46 EST 2006 i686 i686 i386 GNU/Linux&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;  - &lt;span style="font-weight: bold;"&gt;A&lt;/span&gt;pache 2.2.4  latest&lt;br /&gt;  - &lt;span style="font-weight: bold;"&gt;M&lt;/span&gt;ysql - 5.0.36  latest&lt;br /&gt;  - &lt;span style="font-weight: bold;"&gt;P&lt;/span&gt;HP - 5.2.3 latest.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. If you are planning to install LAMP from the scratch, &lt;span style="font-weight: bold;"&gt;REMOVE&lt;/span&gt; default installations of Apache, Mysql and PHP which come with the Linux installation.&lt;br /&gt;&lt;br /&gt;Check the existence of the packages using following commands :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;blockquote style="color: rgb(102, 102, 102);"&gt;&lt;span style="font-style: italic;"&gt;rpm -qa | grep -i mysql&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;rpm -qa | grep -i apache&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;rpm -qa | grep -i httpd&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;rpm -qa | grep -i php&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;if you get any response for this with list of files, rpms, remove them using following :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;&lt;blockquote&gt;rpm -e "file name"&lt;/blockquote&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;But if you are a Fedora user, use "Yum" [fantastic tool for package management, less headache with dependencies],&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;&lt;blockquote&gt;yum remove "file name"&lt;/blockquote&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;With this you can remove earlier installations, now you ready for the installation.&lt;br /&gt;&lt;br /&gt;Installation links are :&lt;br /&gt;&lt;br /&gt;Mysql : http://dev.mysql.com/doc/refman/5.0/en/installing.html&lt;br /&gt;Apache : http://httpd.apache.org/docs/2.2/install.html&lt;br /&gt;PHP : http://www.php.net/manual/en/install.unix.apache2.php&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mysql and Apache installation were very smooth, not much issues,&lt;br /&gt;&lt;br /&gt;2.  When you install , PHP if you come  see following error message :&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="color: rgb(255, 102, 102);"&gt;Configuring extensions&lt;br /&gt;checking whether to enable LIBXML support... yes&lt;br /&gt;checking libxml2 install dir... no&lt;br /&gt;configure: error: xml2-config not found. Please check your libxml2 installation.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You may need to install libxml2 development packages,  you might get this error even you have libxml2, do following in fedora,&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic; color: rgb(102, 102, 102);"&gt;yum install libxml2-devel&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;3. If you install PHP with mysql option, some times you might get following error,&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;     checking for MySQL UNIX socket location... no&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;    configure: error: Cannot find MySQL header files under yes.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;    Note that the MySQL client library is not bundled anymore.&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;If you install mysql without using RPMs there is a high probability of facing this issue, since PHP conigurator cannot locate the mysql.&lt;br /&gt;Use following command to configure the PHP.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;./configure --with-apxs2=/usr/local/apache/bin/apxs --with-mysqli=/usr/local/mysql&lt;/span&gt;&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/22187417-1800384669834515521?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/1800384669834515521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=1800384669834515521&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/1800384669834515521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/1800384669834515521'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2007/07/installing-lamp-tips.html' title='Installing LAMP -  tips'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-880766631930577355</id><published>2007-06-19T13:04:00.000+05:30</published><updated>2007-06-19T13:19:44.036+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='screenshots'/><category scheme='http://www.blogger.com/atom/ns#' term='Symbian'/><title type='text'>Getting Screenshots in symbian phones</title><content type='html'>Today I came across a situation where I wanted to get some screen shots of a Symbian application we developed to update some product documents. Did bit of surfing and ended up with a very nice tool called "Best Screen Snap" which gives similar experience like "Sangit" [Desktop screen capturing tool]. I think this is a very handy tool for mobile application developers. More importantly it is a freeware.&lt;br /&gt;Click &lt;a href="http://www.allaboutsymbian.com/software/item/Best_Screen_Snap.php"&gt;here &lt;/a&gt;for more info and download.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-880766631930577355?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/880766631930577355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=880766631930577355&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/880766631930577355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/880766631930577355'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2007/06/getting-screenshots-in-symbian-phones.html' title='Getting Screenshots in symbian phones'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-5957856928366040911</id><published>2007-06-01T16:37:00.000+05:30</published><updated>2008-12-11T08:30:09.464+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google gears'/><category scheme='http://www.blogger.com/atom/ns#' term='Google reader'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Offline readings with google reader</title><content type='html'>This may be a great news to people who carry laptops and who use google reader as their RSS or ATOM feed readers or any goooglers . You do not need internet always,  to read articles anymore.  When u have internet access, just download  your subscribed articles [2000 articles]  to Google reader, and read them leisurely...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_My8VtRTLD60/RmAAcHOpY8I/AAAAAAAAAAg/WuQjyZNr9YE/s1600-h/google-gear-pic.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_My8VtRTLD60/RmAAcHOpY8I/AAAAAAAAAAg/WuQjyZNr9YE/s320/google-gear-pic.JPG" alt="" id="BLOGGER_PHOTO_ID_5071053663395996610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The newly released Google gadget &lt;a href="http://gears.google.com/"&gt;Google gears&lt;/a&gt;  [a browser based plugin] enables off line reading on google-reader. You can download upto 2000 articles.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Google recommends Firefox 1.5+ or IE 6+.  But some how I was only succeeded with Firefox but failed with IE 6  [understood still it is a beta version].&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-5957856928366040911?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/5957856928366040911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=5957856928366040911&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/5957856928366040911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/5957856928366040911'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2007/06/offline-readings-with-google-reader.html' title='Offline readings with google reader'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_My8VtRTLD60/RmAAcHOpY8I/AAAAAAAAAAg/WuQjyZNr9YE/s72-c/google-gear-pic.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-4676594591418773621</id><published>2007-01-03T13:16:00.000+05:30</published><updated>2007-06-19T13:31:14.588+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Free and Open Source Java</title><content type='html'>&lt;h3&gt;Another Freedom for Java Technology&lt;/h3&gt;   &lt;p class="intro"&gt; Sun started a revolution with Java technology 10 years ago. With a free runtime, an open specification, and a platform-independent promise of compatibility, Java technology became a gold standard in embedded devices, mobile phones, on the desktop and within the enterprise. Now, in 2006, Sun is open sourcing its implementations of Java technology as Free/Libre software. &lt;span class="bluearrows"&gt;&lt;a href="http://www.sun.com/software/opensource/java/project_overview.jsp"&gt;More&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="intro"&gt;&lt;span class="bluearrows"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-4676594591418773621?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.sun.com/software/opensource/java/' title='Free and Open Source Java'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/4676594591418773621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=4676594591418773621&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/4676594591418773621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/4676594591418773621'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2007/01/free-and-open-source-java.html' title='Free and Open Source Java'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-4847030298676317648</id><published>2006-11-14T11:31:00.000+05:30</published><updated>2007-06-19T13:30:49.161+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='videos'/><category scheme='http://www.blogger.com/atom/ns#' term='Google video'/><category scheme='http://www.blogger.com/atom/ns#' term='Google'/><title type='text'>Google Teck Talk Videos</title><content type='html'>If anyone looking for  teck talk videos visit &lt;a href="http://video.google.com/"&gt;google vidoes&lt;/a&gt; and search for &lt;span style="font-weight: bold; font-style: italic;"&gt;type:google engEDU &lt;/span&gt;&lt;br /&gt;. This gives very good teck talk presentation videos including test first coding, agile developments,  open source development tools, python, ruby  and may more...  Further it  has more  videos such as technical trends,  analysis , and managment related topics.. but more towards software engineering.&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-4847030298676317648?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://video.google.com' title='Google Teck Talk Videos'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/4847030298676317648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=4847030298676317648&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/4847030298676317648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/4847030298676317648'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/11/teck-talk-videos.html' title='Google Teck Talk Videos'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-116281249808239561</id><published>2006-11-06T16:47:00.000+05:30</published><updated>2007-06-19T13:30:20.216+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cricket'/><title type='text'>Congrats !!!........ Mahela ... Getting selected as the captain of the Year</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/6723/2253/1600/68123.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/6723/2253/320/68123.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Mahel Jayewardane, Sri Lanka Cricket captain was selected as the captain of the year 2006 ICC awards.... This is a great honour to Sri Lanka and we are proud about you.......And also he is named as the  captain of the world ODI team........&lt;br /&gt;&lt;br /&gt;Read more About this from cricinfo...&lt;br /&gt;&lt;a href="http://content-sl.cricinfo.com/ci/content/story/266800.html"&gt;link 1&lt;/a&gt;&lt;br /&gt;&lt;a href="http://content-sl.cricinfo.com/ci/content/story/266781.html"&gt;link 2&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-116281249808239561?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/116281249808239561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=116281249808239561&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/116281249808239561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/116281249808239561'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/11/congrats-mahela-getting-selected-as.html' title='Congrats !!!........ Mahela ... Getting selected as the captain of the Year'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-116247176328194750</id><published>2006-11-02T16:47:00.000+05:30</published><updated>2006-11-14T10:29:46.726+05:30</updated><title type='text'>Mobile Applications presentation</title><content type='html'>The mobile application presentation done for mobile computing subject.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ruchith.wordpress.com/files/2006/11/mobile-computing-mobile-applications-1.ppt"&gt;slides&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-116247176328194750?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/116247176328194750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=116247176328194750&amp;isPopup=true' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/116247176328194750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/116247176328194750'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/11/mobile-applications-presentation.html' title='Mobile Applications presentation'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-116105885830180858</id><published>2006-10-17T09:44:00.000+05:30</published><updated>2007-06-19T13:30:03.455+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Unit Testing'/><category scheme='http://www.blogger.com/atom/ns#' term='patterns'/><title type='text'>Unit testing anti patterns</title><content type='html'>&lt;span style="font-size:100%;"&gt;I think nowadays everybody is willing to write unit test cases,  and it is very important to know  the things we should &lt;span style="font-weight: bold; color: rgb(204, 0, 0);"&gt;not&lt;/span&gt; do when writing unit tests or in other words &lt;span style="font-weight: bold;"&gt;unit test anti patterns&lt;/span&gt;.&lt;br /&gt;Found some  very good article about junit anti patterns....&lt;br /&gt;&lt;a class="moz-txt-link-freetext" href="http://www.exubero.com/junit/antipatterns.html"&gt;http://www.exubero.com/junit/antipatterns.html&lt;/a&gt;&lt;br /&gt;&lt;a class="moz-txt-link-freetext" href="http://www-128.ibm.com/developerworks/opensource/library/os-junit/"&gt;http://www-128.ibm.com/developerworks/opensource/library/os-junit/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Happy reading.......&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &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/22187417-116105885830180858?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.exubero.com/junit/antipatterns.html' title='Unit testing anti patterns'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/116105885830180858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=116105885830180858&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/116105885830180858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/116105885830180858'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/10/unit-testing-anti-patterns.html' title='Unit testing anti patterns'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115994127294728043</id><published>2006-10-04T11:14:00.000+05:30</published><updated>2007-06-19T13:29:41.343+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruchith'/><category scheme='http://www.blogger.com/atom/ns#' term='birthday'/><title type='text'>Getting older by one more year</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/6723/2253/1600/K14.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger/6723/2253/320/K14.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Today is my birthday , getting older by one more year and moving through 30's. The only thing no body can stop... Time. How fast time is moving..... it is really nice to recall the things happen, did in the last 30 years , Which make always me smile........&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115994127294728043?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115994127294728043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115994127294728043&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115994127294728043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115994127294728043'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/10/getting-older-by-one-more-year.html' title='Getting older by one more year'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115942804776278090</id><published>2006-09-28T12:23:00.000+05:30</published><updated>2007-06-19T13:29:17.205+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile applications'/><category scheme='http://www.blogger.com/atom/ns#' term='J2ME'/><title type='text'>Reducing the size of a j2me jar</title><content type='html'>In J2ME application development , the size of the j2me application jar file is very important as the  application has limited resources in mobile devices. Below you can see some of the points would help you to reduce the size for the jar.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Some points for j2me jar size reduction&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There are many ways to reduce the size of your wireless Java application.&lt;br /&gt;&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Keep it simple&lt;/span&gt;. Simplicity of design can yield robustness, speed, and efficient use of space.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Recompute rather than store&lt;/span&gt;. Recomputing a value rather than storing it for later retrieval can save space. As an example consider the following code fragment:&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Choose an elegant data structure to store information&lt;/span&gt;. You should always consider your options for a data structure to store your information on the device.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Remove unnecessary classes&lt;/span&gt;. One way to "keep it simple" is to review your application design and eliminate classes that are not actually needed.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Reduce functionality and features.&lt;/span&gt; Is all the functionality you've planned actually needed?&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Avoid inner classes.&lt;/span&gt; Many programmers use inner classes, to implement event listeners for example. Convenient, but behind the scenes the compiler generates special instructions to allow the inner class to access the outer class's private data.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Avoid deep inheritance hierarchies.&lt;/span&gt; Although the benefits of inheritance (such as software reuse, increased reliability, and code sharing) are great, nothing is without cost of some sort, including inheritance. Programs must use memory and time to construct fields inherited from a base class even when the derived class makes no use of them. When a method is invoked and it is not part of the derived class, its immediate superclass will be searched; if that class doesn't define the method, its superclass will be searched, and so on. All that extra message passing adds bulk to the bytecode and steals processor time. If a class doesn't use most of the resources it inherits from the base class, it's better to reimplement the resources it does use, instead of inheriting them.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Avoid using inheritance when it isn't necessary.&lt;/span&gt; For example, if you wish to use multiple threads, implement the Runnable interface rather than extending the Thread class.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Use short names for classes, methods, and fields.&lt;/span&gt; Savings from abbreviating any one name aren't dramatic, but they add up. An automated way to get shorter names is to use obfuscation tools. Although their primary intent is to make it harder for a competitor to reverse-engineer your application by decompiling your .class files into easily read .java files, obfuscators also reduce code size by shortening names. There are several obfuscators available, but you may want to try RetroGuard, which is available for free. You can use this obfuscator from the J2ME Wireless Toolkit.&lt;br /&gt;  &lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Take advantage of resource-processing tools that reduce PNG resolution and color depth.&lt;/span&gt; Many devices are capable of displaying only a few colors per pixel, so creating images with many colors per pixel may increase your app's memory footprint without adding any value to it. You may also want to reduce the dimensions of the image.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Don't include unnecessary images.&lt;/span&gt; Why use memory for images that don't enhance your application?&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Eliminate access methods.&lt;/span&gt; Get and set methods can cause your application to run more slowly than if it accessed member variables directly, and they increase program size. Once again, though, it is all about trade-offs.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Refactor.&lt;/span&gt; As applications evolve over time, they often become less space-efficient. Sometimes the best way to save space is to refactor the application, with space-efficiency as a high-level design goal.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Minimize object creation.&lt;/span&gt; Object creation consumes memory and processor cycles, and leads to object destruction, which further reduces performance. Look for ways to reuse existing objects rather than create new ones.&lt;br /&gt;  * &lt;span style="font-weight: bold;"&gt;Avoid string concatenation.&lt;/span&gt; It is well known that concatenating objects with the + operator causes object creation and subsequent garbage collection, and thus chews up both memory and processor time. It is more efficient to use StringBuffer. Note, however, that merely switching from concatenation to use of StringBuffers is not always sufficient because of the way arrays are reallocated. Inefficiencies arise, chiefly because the default character buffer for StringBuffer is 16, and when the buffer is full a new one (usually twice the size of the original) must be allocated. Once the content is copied to the new one, the old buffer is released. This frequent reallocation can be avoided if you create a StringBuffer big enough to hold the longest string you're likely to store.&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;This information was captured form  Sun developer network. Click &lt;a href="http://http//developers.sun.com/techtopics/mobility/midp/articles/slimming/"&gt;here&lt;/a&gt; for the full article.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115942804776278090?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://developers.sun.com/techtopics/mobility/midp/articles/slimming/' title='Reducing the size of a j2me jar'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115942804776278090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115942804776278090&amp;isPopup=true' title='45 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115942804776278090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115942804776278090'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/09/reducing-size-of-j2me-jar.html' title='Reducing the size of a j2me jar'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>45</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115882279803853991</id><published>2006-09-21T12:20:00.000+05:30</published><updated>2007-06-19T13:28:21.804+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='EJB'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='J2EE'/><category scheme='http://www.blogger.com/atom/ns#' term='Spring'/><title type='text'>Enabling high availability in Spring applications</title><content type='html'>&lt;a href="http://www.springframework.org/"&gt;Spring&lt;/a&gt; has been one of the buzz word in the software development industry, it make developers life easier using concepts such as IoC, DI, AOP. Ofcourse Spring did a revolution in the j2EE similar to what EJB did. To add more value to the Spring framework , &lt;a href="http://terracottatech.com/index.shtml"&gt;terracotta&lt;/a&gt; has come up with high availability, high performance clustering without code changes.&lt;br /&gt;For more info read following captured from &lt;a href="http://www.theserverside.com/news/thread.tss?thread_id=42170&amp;asrc=EM_NLN_559257&amp;amp;uid=2715131"&gt;www.theserverside.com&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;/a&gt; &lt;div class="iteminfo"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://terracottatech.com/terracotta_spring.shtml"&gt;Terracotta for Spring&lt;/a&gt; is a runtime for Spring-based applications that provides high-availability and high performance clustering for Spring applications with zero changes to the application code. Terracotta for Spring provides plug-in capacity, availability and scalability for Spring applications with absolutely no changes to existing code.&lt;br /&gt;&lt;br /&gt;Features:   &lt;ul&gt; &lt;li&gt;High performance runtime for Spring Applications&lt;/li&gt;&lt;li&gt;Cluster Spring Beans, Events, JMX State and Spring WebFlows&lt;/li&gt;&lt;li&gt;Virtual memory for large, shared Java heaps&lt;/li&gt;&lt;li&gt;Flexible sharing and locking configurable at runtime&lt;/li&gt;&lt;li&gt;Cross-JVM Thread coordination (Wait / Notify)&lt;/li&gt;&lt;li&gt;Runtime visibility into the application cluster&lt;/li&gt;   &lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;It can be &lt;a href="http://terracottatech.com/downloads.jsp"&gt;downloaded now&lt;/a&gt; with registration.        &lt;br /&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115882279803853991?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115882279803853991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115882279803853991&amp;isPopup=true' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115882279803853991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115882279803853991'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/09/enabling-high-availability-in-spring.html' title='Enabling high availability in Spring applications'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115867585964679025</id><published>2006-09-19T19:47:00.000+05:30</published><updated>2007-06-19T13:27:33.753+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='IDE'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Python IDE</title><content type='html'>Very nice Python IDE , a cool one , would love it if it is a open source one.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wingware.com/"&gt;http://wingware.com&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115867585964679025?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://wingware.com' title='Python IDE'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115867585964679025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115867585964679025&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115867585964679025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115867585964679025'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/09/python-ide.html' title='Python IDE'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115804640181772042</id><published>2006-09-12T12:45:00.000+05:30</published><updated>2007-06-19T13:27:13.036+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='J2ME'/><category scheme='http://www.blogger.com/atom/ns#' term='Struts'/><title type='text'>Struts + J2ME --&gt; Strutsme</title><content type='html'>Struts did a major revolution in the web application development , specially since it is  MVC pattern based farmework it gave a lot of structured architecture for java based web applications. Now a days Struts and JSF are competeing each other neck to neck.  Both has prons and cons. I'm not willing to compare each other  as I'm a fan of both. How ever for you reference &lt;a href="http://www.simplica.com/strutsvsjsf.htm"&gt;Struts vs JSF&lt;/a&gt; gives some comparison.&lt;br /&gt;&lt;br /&gt;J2ME also did major revolution in the mobile application development industry. Currently J2ME has huge market share in thee mobile phone / application market.&lt;br /&gt;&lt;br /&gt;Going forward, now we can see a combination of Struts and J2ME  -- &gt; &lt;a href="http://www.strutsme.org/"&gt;StrutsME&lt;/a&gt; , This enables J2ME clients to call struts based action classes and use struts validators,etc.&lt;br /&gt;You can get more information about this from &lt;a href="http://www.strutsme.org/details.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/22187417-115804640181772042?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115804640181772042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115804640181772042&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115804640181772042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115804640181772042'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/09/struts-j2me-strutsme.html' title='Struts + J2ME --&gt; Strutsme'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115751725312462318</id><published>2006-09-06T09:50:00.000+05:30</published><updated>2007-06-19T13:26:08.387+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile applications'/><category scheme='http://www.blogger.com/atom/ns#' term='J2ME'/><category scheme='http://www.blogger.com/atom/ns#' term='Symbian'/><category scheme='http://www.blogger.com/atom/ns#' term='Flash lite'/><title type='text'>Getting started with Flash lite</title><content type='html'>&lt;img alt="The image “http://wwwimages.adobe.com/www.adobe.com/images/shared/product_logos/159x120/159x120_flash_jelly.jpg” cannot be displayed, because it contains errors." src="http://wwwimages.adobe.com/www.adobe.com/images/shared/product_logos/159x120/159x120_flash_jelly.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;No need to mention , the importance of mobile phone in current&lt;br /&gt;era not only for calls but also to enable the access to other service on the move.&lt;br /&gt;&lt;br /&gt;I have been working on mobile and telco application development for last 6 years with &lt;a href="http://www.hsenid.com/"&gt;hSenid&lt;/a&gt; and it is amazing to see the growth of mobile technologies. We talked about about SMS,MMS, WAP2.0, XHTML,Symbian C++, J2ME......... and NOW Flash Lite.&lt;br /&gt;Flash Lite is the latest matured technology which is ready provide rich but light wei ght GUI in mobile phones. I'm sure anyone who is interested in mobile application development would definitly like to know about flash lite.&lt;br /&gt;I found a good article , infact a tutorial about Flash Lite in "sony ericsson" web site..... thought of sharing it with you all.&lt;br /&gt;Yes.... definitly there will be a bias towards Sony Ericsson, But it is a good starting point.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.sonyericsson.com/site/global/newsandevents/latestnews/newsaugust06/p_flashlite_gettingstarted_tutorial.jsp"&gt;Tutorial link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Happy reading.............&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115751725312462318?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115751725312462318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115751725312462318&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115751725312462318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115751725312462318'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/09/getting-started-with-flash-lite.html' title='Getting started with Flash lite'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115708950046494958</id><published>2006-09-01T10:51:00.000+05:30</published><updated>2007-06-19T13:24:55.767+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='online tools'/><title type='text'>Online word processors,spread sheets, slides, project management and lot more.</title><content type='html'>Got to know about a great site, absoultly fantastic ......... Everything is on-line. What are you looking for it is there......&lt;br /&gt;Word processors, spread sheets , slide creation, project management tools, virtual office,  CRM, Planner, Chat.... everyting....&lt;br /&gt;This is going to be a definite threat for Microsoft office [can't help].&lt;br /&gt;&lt;br /&gt;where you can find this , visit &lt;a href="http://www.zoho.com/"&gt;www.zoho.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thanks Kutila[@ hSenid], sending me the link.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115708950046494958?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115708950046494958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115708950046494958&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115708950046494958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115708950046494958'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/09/online-word-processorsspread-sheets.html' title='Online word processors,spread sheets, slides, project management and lot more.'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115694449508738209</id><published>2006-08-30T16:59:00.000+05:30</published><updated>2007-06-19T13:24:04.312+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Performance'/><title type='text'>MySQL Wins Prestigious International Database Contest</title><content type='html'>It is great to hear that MySql wins the database contest in performance. This is a great benchmark to  convince  customers to use mysql. &lt;br /&gt;&lt;a href="http://www.mysql.com/news-and-events/press-release/release_2006_35.html"&gt;Read more info ...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115694449508738209?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.mysql.com/news-and-events/press-release/release_2006_35.html' title='MySQL Wins Prestigious International Database Contest'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115694449508738209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115694449508738209&amp;isPopup=true' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115694449508738209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115694449508738209'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/08/mysql-wins-prestigious-international.html' title='MySQL Wins Prestigious International Database Contest'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115639410562328718</id><published>2006-08-24T10:02:00.000+05:30</published><updated>2007-06-19T13:23:32.826+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><category scheme='http://www.blogger.com/atom/ns#' term='Struts'/><title type='text'>Good Article : About JSF &amp; Struts [The add-and-remove pattern]</title><content type='html'>&lt;p&gt;&lt;img alt="" src="http://res.sys-con.com/story/aug06/260036/Jakarta-Struts-226.jpg" align="right" border="0" height="127" hspace="8" vspace="8" width="226" /&gt;&lt;br /&gt;&lt;/p&gt; &lt;div class="storytitle"&gt;Java Feature — Jakarta Struts &amp;amp; JavaServer Faces&lt;/div&gt;  &lt;div class="storyminortitle"&gt;The add-and-remove pattern&lt;/div&gt; &lt;p&gt; Long lists and ordered selections require a more complex design pattern. This pattern displays available items in one list and chosen items in another so the user's choices are always visible and easily modified.&lt;/p&gt; &lt;p&gt; This design pattern is commonly called a Dual List or Dual Listbox selector. It is also known as the Selection Summary or List Builder pattern. In the Java Look and Feel Design Guidelines, it's called the Add-and-Remove pattern:&lt;/p&gt; &lt;p&gt; Typical Struts implementations of this pattern require JSPs, Java, and JavaScript. JavaServer Faces doesn't need JSPs, but they're used here for easy comparison.&lt;br /&gt;&lt;/p&gt; &lt;p&gt;read more ...&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/22187417-115639410562328718?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://java.sys-con.com/read/260036.htm' title='Good Article : About JSF &amp; Struts [The add-and-remove pattern]'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115639410562328718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115639410562328718&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115639410562328718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115639410562328718'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/08/good-article-about-jsf-struts-add-and.html' title='Good Article : About JSF &amp; Struts [The add-and-remove pattern]'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22187417.post-115634101829690158</id><published>2006-08-23T19:18:00.000+05:30</published><updated>2007-06-19T13:23:01.093+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Unit Testing'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='TDD'/><title type='text'>Good Article : Write Right Java Faster Using Test-Driven Development</title><content type='html'>&lt;h1&gt;&lt;span style="font-size:85%;"&gt;Write Right Java Faster Using Test-Driven Development&lt;/span&gt;&lt;/h1&gt;  &lt;div class="storybody"&gt; &lt;p&gt;&lt;em&gt;Testing Java code is increasingly a task taken on by developers rather than separate teams to which the programs are handed. Many Java developers are now familiar with JUnit and know the different between unit tests and integration tests. This has been driven largely by the focus on test-driven development (TDD) in extreme programming (XP) and other agile software development methodologies. While the industry-at-large has recognized the value of unit tests and has a new outlook on testing in general, for the most part, actual TDD (meaning, the tests are written first) is not usually practiced outside of hardcore agile shops.&lt;/em&gt;&lt;/p&gt; In this article, we'll present a specific example (based on a real-world scenario that we recently faced) and walk step-by-step how to take a pure TDD approach and hopefully show the benefits of embracing TDD completely in this scenario. (For a clear and concise explanation of some of the major benefits of TDD in general, see &lt;a target="_blank" href="http://www.extremeprogramming.org/rules/testfirst.html"&gt;www.extremeprogramming.org/rules/testfirst.html&lt;/a&gt;.) &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;The Scenario&lt;/strong&gt;&lt;br /&gt;This scenario is modeled closely on one we faced at a client site recently. In short, we were a pair on a development team working on a project with typical issues:&lt;/p&gt; &lt;ol&gt;&lt;li&gt; A deadline/delivery date had been set   &lt;/li&gt;&lt;li&gt; Little or no requirements existed and   &lt;/li&gt;&lt;li&gt; It didn't look like we'd be getting requirements any time soon (due to limited staffing, etc.).   &lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;Read more.....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22187417-115634101829690158?l=ruchithg.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://jdj.sys-con.com/read/250263.htm' title='Good Article : Write Right Java Faster Using Test-Driven Development'/><link rel='replies' type='application/atom+xml' href='http://ruchithg.blogspot.com/feeds/115634101829690158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22187417&amp;postID=115634101829690158&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115634101829690158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22187417/posts/default/115634101829690158'/><link rel='alternate' type='text/html' href='http://ruchithg.blogspot.com/2006/08/good-article-write-right-java-faster.html' title='Good Article : Write Right Java Faster Using Test-Driven Development'/><author><name>Ruchith</name><uri>http://www.blogger.com/profile/16735765050048668134</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
