<?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-11705241</id><updated>2012-01-24T14:56:40.414+08:00</updated><title type='text'>SaikoWierdz scribblings</title><subtitle type='html'>My Daily Doze of -mostly- tech tit bits</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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>63</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-11705241.post-8124966247629506145</id><published>2009-04-18T22:38:00.000+08:00</published><updated>2009-04-19T05:54:11.589+08:00</updated><title type='text'>Acer Aspire 7720 and Fedora (9/10)</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;My Acer Aspire 7720 gave me a fare share of issues on Linux. I won't recommend it for the newbie Linux user.&lt;br/&gt;&lt;br/&gt;For the start it would not boot to XWindows...and would pretty much freeze. Can't remember right, but changing to init3 was okay for a while. Finally I managed to make it work by setting noapic acpi=off to the kernel at boot-time. This was done in the grub settings (use the 'a' option when the grub boot screen comes up)&lt;br/&gt;&lt;br/&gt;But then my wireless would not work, nor would the Fn keys or the extra keys above the 'normal' keyboard...damn. It turns out that those keys use the APIC controller so either I can boot to init 3 (non graphics) or have graphics but not wireless. What a fork!&lt;br/&gt;&lt;br/&gt;After lot of headbanging, I realized that there was an updated BIOS available on the ACER website. Mine was at an old 1.14 version while version 1.42 was available. I booted to windows (thankgod I had not cleaned it away!), a simple utility upgraded BIOS...and sure enough, both Xwindows, WLAN started working fine together. Since realizing that, I removed the noapic acpi=off lines from the /etc/grub.conf&lt;br/&gt;&lt;br/&gt;Allz well that ends well&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=85eaa201-f08d-862d-80f3-35ca0178ffc1' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-8124966247629506145?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/8124966247629506145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=8124966247629506145' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/8124966247629506145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/8124966247629506145'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/04/acer-aspire-7720-and-fedora-910.html' title='Acer Aspire 7720 and Fedora (9/10)'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-6005002358587776826</id><published>2009-03-10T07:46:00.001+08:00</published><updated>2009-03-10T07:46:29.933+08:00</updated><title type='text'>cvs checkout to a directory by use of -d option</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;the -d option in cvs is confusing at times. The documentation seems to suggest it should be used for CVSROOT. however it can be (in some sense) overloaded to get the effect of checking out a directory without the whole tree structure being built&lt;br/&gt;&lt;br/&gt;say you want to checkout A/B/C/D into folder P then do&lt;br/&gt;&lt;br/&gt;cvs -d P A/B/C/D&lt;br/&gt;&lt;br/&gt;this will have the effect of getting directory contents of D in P, withouth creating a directory named D.&lt;br/&gt;&lt;br/&gt;the base cvsroot will be picked from whatever your CVSROOT reads, for eg: :ext:pmukherjee@cvsserver:/usr/local/rep&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=f1396869-dc5c-4175-a552-999c47560a8e' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-6005002358587776826?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/6005002358587776826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=6005002358587776826' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6005002358587776826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6005002358587776826'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/03/cvs-checkout-to-directory-by-use-of-d.html' title='cvs checkout to a directory by use of -d option'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-5015700575280512019</id><published>2009-02-26T11:50:00.001+08:00</published><updated>2009-02-26T11:50:11.155+08:00</updated><title type='text'>Maven 2 repositories</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;My company had to choose a good maven 2 repository and I was blinded by the number of choices available and features to choose. After reading through the guide here:&lt;a href='http://blogs.exist.com/oching/2007/11/05/the-hype-about-repository-managers/'&gt;http://blogs.exist.com/oching/2007/11/05/the-hype-about-repository-managers/&lt;/a&gt;&lt;br/&gt;I decided for archiva. &lt;br/&gt;&lt;br/&gt;For me the single most compelling point was 'purging'. We have had loads of issues in the past with disk sapce and that was the point I needed!&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=09a583f8-d6ba-4b21-8ef0-166e7d50d5b0' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-5015700575280512019?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/5015700575280512019/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=5015700575280512019' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5015700575280512019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5015700575280512019'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/02/maven-2-repositories_26.html' title='Maven 2 repositories'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-5509311570998741923</id><published>2009-02-23T15:56:00.001+08:00</published><updated>2009-02-23T15:56:25.014+08:00</updated><title type='text'>FM Channel Finder</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;After struggling through various frequencies and bands and having no luck.... light at the end of the tunnel. Very much needed &lt;a href='http://fmchannel.sirius.com/servlet/FMFind'&gt;FM Channel Finder&lt;/a&gt; &lt;br/&gt;Neat eh? Will try it tomm morn, if there is not a follow-up post within the next 2 days, presume it worked for me:)&lt;br/&gt;For me at San Diego, here are the frequencies that it suggests will work:&lt;br/&gt;106.1,101.1,105.9,106.9,104.1&lt;br/&gt;&lt;blockquote&gt;Fingers crossed!&lt;br/&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-5509311570998741923?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/5509311570998741923/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=5509311570998741923' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5509311570998741923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5509311570998741923'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/02/fm-channel-finder.html' title='FM Channel Finder'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-6615106466282546192</id><published>2009-02-10T10:26:00.001+08:00</published><updated>2009-02-10T10:26:24.636+08:00</updated><title type='text'>Maven 2 repositories</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;My company had to choose a good maven 2 repository and I was blinded by the number of choices available and features to choose. After reading through the guide here:&lt;a href='http://blogs.exist.com/oching/2007/11/05/the-hype-about-repository-managers/'&gt;http://blogs.exist.com/oching/2007/11/05/the-hype-about-repository-managers/&lt;/a&gt;&lt;br/&gt;I decided for archiva. &lt;br/&gt;&lt;br/&gt;For me the single most compelling point was 'purging'. We have had loads of issues in the past with disk sapce and that was the point I needed&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-6615106466282546192?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/6615106466282546192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=6615106466282546192' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6615106466282546192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6615106466282546192'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/02/maven-2-repositories.html' title='Maven 2 repositories'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-3038977053977311540</id><published>2009-01-30T17:25:00.001+08:00</published><updated>2009-01-30T17:25:02.990+08:00</updated><title type='text'>shell script notes</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;How to do or, add&lt;br/&gt;&lt;pre&gt;&amp;lt;b&amp;gt;&amp;lt;b&amp;gt;&amp;lt;span class="__mozilla-findbar-search" style="padding: 0pt; background-color: yellow; color: black; display: inline; font-size: inherit;"&amp;gt;if [&amp;lt;/span&amp;gt; -f $dir/$file ] || [ -f $dir/$newfile ]; then&amp;lt;br /&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/b&amp;gt;&lt;/pre&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-3038977053977311540?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/3038977053977311540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=3038977053977311540' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/3038977053977311540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/3038977053977311540'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/01/shell-script-notes.html' title='shell script notes'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-7392113842322566710</id><published>2009-01-30T13:38:00.001+08:00</published><updated>2009-01-30T13:38:06.066+08:00</updated><title type='text'>Debugging cruisecontrol</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;It is often handy to debug cruisecontrol using its console mode: service &lt;a href='http://cruisecontrol.sourceforge.net'&gt;cruisecontrol&lt;/a&gt; console&lt;br/&gt;&lt;br/&gt;If there are issues with your config.xml or any other problems that end up blocking the whole build queue, this is probably the only good way to debug.&lt;br/&gt;&lt;br/&gt;also handy is the 22000 default port which provides a web-console&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-7392113842322566710?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/7392113842322566710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=7392113842322566710' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7392113842322566710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7392113842322566710'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/01/debugging-cruisecontrol.html' title='Debugging cruisecontrol'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-2507768983047697149</id><published>2009-01-26T03:46:00.001+08:00</published><updated>2009-01-26T03:46:34.357+08:00</updated><title type='text'>cvs commands:Notes</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;cvs commit -m "comment" files&lt;br/&gt;the writers file maintains list of folks who can write&lt;br/&gt;all config files are maintained in checkoutlist&lt;br/&gt;cvs import &amp;lt;module name&amp;gt; &amp;lt;vendor tag&amp;gt; &lt;br /&gt;&amp;lt;initial tag&amp;gt;&lt;br/&gt;cvs add file -- always commit after adding&lt;br/&gt;&lt;br/&gt;Labels in cvs&lt;br/&gt;U-Updated&lt;br/&gt;P-new files&lt;br/&gt;M- for files you've&lt;br /&gt;modified locally and not committed&lt;br/&gt;C-for files you've updated locally, &lt;br /&gt;and&lt;br /&gt;that have conflict&lt;br/&gt;&lt;br/&gt;editing (marking it) locking&lt;br/&gt;cvs edit filename ; cvs editors filename-&amp;gt;gives list of editors;cvs unedit&lt;br/&gt;cvs admin -l filename;cvs admin -u filename&lt;br/&gt;&lt;br/&gt;cvs delete;cvs commit&lt;br/&gt;------------------&lt;br/&gt;References:&lt;br/&gt;&lt;br /&gt;http://www.linux.ie/articles/tutorials/cvs.php&lt;br/&gt;&lt;br /&gt;http://www.linux.ie/articles/tutorials/continuingcvs.php&lt;br/&gt;&lt;br /&gt;------------------&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-2507768983047697149?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/2507768983047697149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=2507768983047697149' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/2507768983047697149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/2507768983047697149'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2009/01/cvs-commandsnotes.html' title='cvs commands:Notes'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-1680492314133306023</id><published>2008-12-02T05:10:00.001+08:00</published><updated>2008-12-02T05:10:07.149+08:00</updated><title type='text'>convert uif, daa to iso on Fedora Core (FC)</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Quick links and guidance on how to convert daa, uif formats to iso on FC. Once convereted they can either be directly mounted on linux or burnt using k3b&lt;br/&gt;&lt;br/&gt;&lt;b&gt;&lt;big&gt;Coverting daa files to iso: &lt;/big&gt;&lt;/b&gt;&lt;br/&gt;use poweriso available from &lt;code&gt;http://poweriso.com/poweriso-1.2.tar.gz&lt;br/&gt;&lt;br/&gt;(these steps work without change for FC)&lt;br/&gt;&lt;br/&gt;Exact steps here: &lt;a href='http://www.cyberciti.biz/faq/how-do-i-open-daa-direct-access-archive-files-under-linux-or-unix-oses/'&gt;http://www.cyberciti.biz/faq/how-do-i-open-daa-direct-access-archive-files-under-linux-or-unix-oses/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;/code&gt;&lt;b&gt;&lt;big&gt;Converting uif to iso:&lt;/big&gt;&lt;br/&gt;&lt;/b&gt;&lt;br/&gt;use uif2iso utility written by  &lt;a rel='nofollow' href='http://aluigi.altervista.org/'&gt;Luigi Auriemma&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;Steps here: &lt;a href='http://wesleybailey.com/articles/convert-uif-to-iso'&gt;http://wesleybailey.com/articles/convert-uif-to-iso&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;However the apt-get step wont work. Use sudo yum -y install *zlib* instead. Rest of the steps stay the same&lt;br/&gt;&lt;code&gt;&lt;br/&gt;&lt;br/&gt;&lt;/code&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-1680492314133306023?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/1680492314133306023/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=1680492314133306023' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/1680492314133306023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/1680492314133306023'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/12/convert-uif-daa-to-iso-on-fedora-core.html' title='convert uif, daa to iso on Fedora Core (FC)'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-7478068579362853930</id><published>2008-11-21T17:04:00.001+08:00</published><updated>2008-11-21T17:04:36.089+08:00</updated><title type='text'>got ie 5.5 to work with fedora core 9</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;god had mercy again. and the poor boy was enlightened by ies4linux http://www.tatanka.com.br/ies4linux/page/Main_Page. I just followed the instructions for Fedora install. Pretty easy. Did have a glitch here and there with the installer crashing a couple of times. I realize that it was breaking while trying to create the wine profile so I manually ran winecfg once from the wine menu. that still dint work for ie6 install. So next i tried ie 5.5 and yep, that worked good. and there was light!&lt;br/&gt;&lt;br/&gt;my company uses outlook for mail and with the deluge of mails i get everyday ( or better put, every second), having the search, select multiple mails facilities that the activex plugin of outlook provides was a key. And this did it.&lt;br/&gt;thanks ies4linux. One day, when i become rich, i will sure donate for you guys. For now an appeal to anyone who reads this page:Please donate.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-7478068579362853930?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/7478068579362853930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=7478068579362853930' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7478068579362853930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7478068579362853930'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/11/got-ie-55-to-work-with-fedora-core-9.html' title='got ie 5.5 to work with fedora core 9'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-7844929659013488806</id><published>2008-11-16T15:38:00.003+08:00</published><updated>2008-11-16T15:57:59.719+08:00</updated><title type='text'>Fedora 9 Personal Installation Script</title><content type='html'>This is now the 4th Fedora system I need to setup and I continue to reference the great article at: http://www.mjmwired.net/resources/mjm-fedora-f9.html#mp3 to get my job done. But why not convert it into a script so that I can avoid the headache if I have to do it a 5th time! And might also come handy to other folks.&lt;br /&gt;&lt;br /&gt;Note: All commands here are from the original post (except where specified)&lt;br /&gt;How to use: login as your normal user and open a root shell by doing #su -&lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;# A script to do/install common addons and tweaks. Referenced from http://www.mjmwired.net/resources/mjm-fedora-f9.html#mp3 and added onto. Make sure to change the variables below per your environment&lt;br /&gt;&lt;br /&gt;#the loginname/user you would use on the linux box&lt;br /&gt;LOGINNAME=pr0t0s&lt;br /&gt;&lt;br /&gt;#Setup sudo&lt;br /&gt;echo '${LOGINNAME} ALL=(ALL) ALL' &gt;&gt; /etc/sudoers&lt;br /&gt;&lt;br /&gt;#setup rpm, livna&lt;br /&gt;rpm --import /etc/pki/rpm-gpg/*&lt;br /&gt;rpm -ivh http://rpm.livna.org/livna-release-9.rpm&lt;br /&gt;rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-livna&lt;br /&gt;&lt;br /&gt;#echo networkwait&lt;br /&gt;echo NETWORKWAIT=1 &gt;&gt; /etc/sysconfig/network&lt;br /&gt;&lt;br /&gt;#gcc compat and gcc 3.4&lt;br /&gt;yum -y install compat-libstdc++-33 compat-libstdc++-296&lt;br /&gt;yum install compat-gcc-34 compat-gcc-34-c++&lt;br /&gt;&lt;br /&gt;#Install mp3 and media players&lt;br /&gt;#audacious&lt;br /&gt;yum -y install audacious audacious-plugins-nonfree*&lt;br /&gt;yum -y install rhythmbox gstreamer-plugins-ugly gstreamer-plugins-bad gstreamer-ffmpeg&lt;br /&gt;yum -y install amarok amarok-extras-nonfree amarok-visualisation&lt;br /&gt;yum -y install k3b-extras-nonfree&lt;br /&gt;&lt;br /&gt;yum -y install mplayer mplayer-gui gecko-mediaplayer mencoder&lt;br /&gt;yum -y install mplayer mplayer-gui gecko-mediaplayer mencoder&lt;br /&gt;&lt;br /&gt;mkdir -p /usr/lib/codecs&lt;br /&gt;wget http://www.mplayerhq.hu/MPlayer/releases/codecs/all-20061022.tar.bz2&lt;br /&gt;tar -jxvf all-20071007.tar.bz2 --strip-components 1 -C /usr/lib/codecs/&lt;br /&gt;&lt;br /&gt;yum -y install vlc&lt;br /&gt;&lt;br /&gt;# True type fonts&lt;br /&gt;rpm -ivh msttcore-fonts-2.0-2.noarch.rpm&lt;br /&gt;&lt;br /&gt;# Flash Support&lt;br /&gt;rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm&lt;br /&gt;rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux&lt;br /&gt;yum -y install flash-plugin libflashsupport&lt;br /&gt; &lt;br /&gt;#Adobe Acrobat Reader&lt;br /&gt;rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm&lt;br /&gt;rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux&lt;br /&gt;yum -y install AdobeReader_enu&lt;br /&gt;&lt;br /&gt;# Shout out Yohoo message&lt;br /&gt;echo " ######################## YOOOHOOOOO=done #####################"&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-7844929659013488806?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/7844929659013488806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=7844929659013488806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7844929659013488806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7844929659013488806'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/11/fedora-9-personal-installation-script.html' title='Fedora 9 Personal Installation Script'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-6270553154347127883</id><published>2008-11-16T15:35:00.003+08:00</published><updated>2008-11-16T15:38:04.036+08:00</updated><title type='text'>wget the whole sitet</title><content type='html'>wget --no-parent -cbkr http://www.domain.com/path/to/directory/&lt;br /&gt;&lt;br /&gt;Reference from:http://minus.ws/note/?p=48&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-6270553154347127883?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/6270553154347127883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=6270553154347127883' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6270553154347127883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6270553154347127883'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/11/wget-whole-sitet.html' title='wget the whole sitet'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-8054831595790047457</id><published>2008-06-27T14:15:00.001+08:00</published><updated>2008-06-27T14:15:41.782+08:00</updated><title type='text'>rpc/literal vs doc/literal</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;pre space='preserve' id='ctl00_rs1_mainContentContainer_ctl01' class='libCScode'&gt;&amp;lt;soap:Envelope &lt;br/&gt;xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;&lt;br/&gt;  &amp;lt;soap:Body&amp;gt;&lt;br/&gt;&amp;lt;!-- the following is an XML document described in the service's &lt;br/&gt;contract using XML Schema. In this case Example may or may not be the &lt;br/&gt;name of a remote procedure being invoked by this message. &lt;br/&gt;Also, cust may or may not be the name of a parameter. We know the &lt;br/&gt;structure of the XML document but we don't know how the service &lt;br/&gt;processes it --&amp;gt;&lt;br/&gt;    &amp;lt;Example xmlns="http://example.org/soapformat"&amp;gt;&lt;br/&gt;      &amp;lt;cust&amp;gt;&lt;br/&gt;        &amp;lt;Customer&amp;gt;&lt;br/&gt;          &amp;lt;Name&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;John Doe&lt;/b&gt;&lt;/code&gt;&amp;lt;/Name&amp;gt;&lt;br/&gt;          &amp;lt;Id&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;ABC-1234&lt;/b&gt;&lt;/code&gt;&amp;lt;/Id&amp;gt;&lt;br/&gt;        &amp;lt;/Customer&amp;gt;&lt;br/&gt;        &amp;lt;Customer&amp;gt;&lt;br/&gt;          &amp;lt;Name&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;Jane Doe&lt;/b&gt;&lt;/code&gt;&amp;lt;/Name&amp;gt;&lt;br/&gt;          &amp;lt;Id&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;XYZ-1234&lt;/b&gt;&lt;/code&gt;&amp;lt;/Id&amp;gt;&lt;br/&gt;        &amp;lt;/Customer&amp;gt;&lt;br/&gt;      &amp;lt;/cust&amp;gt;&lt;br/&gt;    &amp;lt;/Example&amp;gt;&lt;br/&gt;  &amp;lt;/soap:Body&amp;gt;&lt;br/&gt;&amp;lt;/soap:Envelope&amp;gt;&lt;/pre&gt; &lt;h3 class='dtH1'&gt;RPC/literal&lt;/h3&gt; &lt;div id='ctl00_rs1_mainContentContainer_ctl02_' class=''&gt;&lt;div class='CodeSnippetTitleBar'&gt;&lt;div class='CopyCodeButton'&gt;&lt;a href='javascript:CopyCode(&amp;apos;ctl00_rs1_mainContentContainer_ctl02&amp;apos;);' class='copyCode'&gt;&lt;img height='9' border='0' align='middle' src='http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif'/&gt; Copy Code&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre space='preserve' id='ctl00_rs1_mainContentContainer_ctl02' class='libCScode'&gt;&amp;lt;soap:Envelope &lt;br/&gt;xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;&lt;br/&gt;  &amp;lt;soap:Body&amp;gt;&lt;br/&gt;&amp;lt;!-- Example is the name of the procedure being invoked &lt;br/&gt;cust is a parameter of that procedure. &lt;br/&gt;Note that cust is not namespace-qualified.&lt;br/&gt;The two Customer elements are contents of the cust parameter. In this &lt;br/&gt;case cust can be thought of as an array of Customer items. &lt;br/&gt;Note that Customer is namespace qualified but it's in a different &lt;br/&gt;namespace than Example.&lt;br/&gt;These namespace rules are unique to RPC-style messages and will be &lt;br/&gt;explained in the next section  --&amp;gt;&lt;br/&gt;    &amp;lt;x:Example xmlns:x="http://example.org/soapformat/Example"&amp;gt;&lt;br/&gt;      &amp;lt;cust&amp;gt;&lt;br/&gt;        &amp;lt;t:Customer xmlns:t="http://example.org/soapformat"&amp;gt;&lt;br/&gt;          &amp;lt;t:Name&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;John Doe&lt;/b&gt;&lt;/code&gt;&amp;lt;/t:Name&amp;gt;&lt;br/&gt;          &amp;lt;t:Id&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;ABC-1234&lt;/b&gt;&lt;/code&gt;&amp;lt;/t:Id&amp;gt;&lt;br/&gt;        &amp;lt;/t:Customer&amp;gt;&lt;br/&gt;        &amp;lt;t:Customer&amp;gt;&lt;br/&gt;          &amp;lt;t:Name&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;Jane Doe&lt;/b&gt;&lt;/code&gt;&amp;lt;/t:Name&amp;gt;&lt;br/&gt;          &amp;lt;t:Id&amp;gt;&lt;code&gt;&lt;b class='cfe'&gt;XYZ-1234&lt;/b&gt;&lt;/code&gt;&amp;lt;/t:Id&amp;gt;&lt;br/&gt;        &amp;lt;/t:Customer&amp;gt;&lt;br/&gt;      &amp;lt;/cust&amp;gt;&lt;br/&gt;&lt;br/&gt;&lt;/pre&gt;&lt;h2 class='dtH1'&gt;Describing SOAP Message Formats&lt;/h2&gt; &lt;h3 class='dtH1'&gt;Describing document/literal messages&lt;/h3&gt; &lt;p&gt;In&lt;br /&gt;this section I will explain how WSDL describes document/literal and&lt;br /&gt;RPC/literal message formats. The examples and explanations I give take&lt;br /&gt;into account WS-I Basic Profile 1.0 recommendations. I will not cover&lt;br /&gt;SOAP encoding to focus on comparing document/literal and RPC/literal.&lt;/p&gt; &lt;p&gt;The listing below shows a WSDL example describing two document/literal messages. The salient features are:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul type='disc'&gt;&lt;li&gt;Each message contains zero or one part. That part points to a schema element declaration that describes the &lt;i&gt;entire&lt;/i&gt; contents of the message body.&lt;/li&gt;&lt;li&gt;In the SOAP binding, style is "document" and use is "literal".&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The&lt;br /&gt;primary feature of document/literal, and its key benefit compared to&lt;br /&gt;RPC/literal, is the use of a schema element declaration to completely&lt;br /&gt;describe the contents of &lt;b&gt;soap:Body&lt;/b&gt;. This means you can tell&lt;br /&gt;what the message body Infoset contains just by looking at the schema&lt;br /&gt;and with no need for additional rules. Consequently you could take the&lt;br /&gt;schema describing a document/literal message and use it to validate the&lt;br /&gt;message. You can't do this with RPC/literal.&lt;/p&gt; &lt;div id='ctl00_rs1_mainContentContainer_ctl03_' class=''&gt;&lt;div class='CodeSnippetTitleBar'&gt;&lt;div class='CopyCodeButton'&gt;&lt;a href='javascript:CopyCode(&amp;apos;ctl00_rs1_mainContentContainer_ctl03&amp;apos;);' class='copyCode'&gt;&lt;img height='9' border='0' align='middle' src='http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif'/&gt; Copy Code&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre space='preserve' id='ctl00_rs1_mainContentContainer_ctl03' class='libCScode'&gt;&amp;lt;definitions &lt;br/&gt;xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" &lt;br/&gt;xmlns:s="http://www.w3.org/2001/XMLSchema" &lt;br/&gt;xmlns:tns="http://example.org/soapformat" &lt;br/&gt;xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" &lt;br/&gt;targetNamespace="http://example.org/soapformat" &lt;br/&gt;xmlns="http://schemas.xmlsoap.org/wsdl/"&amp;gt;&lt;br/&gt;  &amp;lt;types&amp;gt;&lt;br/&gt;    &amp;lt;s:schema elementFormDefault="qualified" &lt;br/&gt;              targetNamespace="http://example.org/soapformat"&amp;gt;&lt;br/&gt;    &amp;lt;!-- this element declaration describes the &lt;br/&gt;     entire contents of the soap:Body in the request messaage. &lt;br/&gt;     This is a feature of document/literal that RPC/literal lacks --&amp;gt;&lt;br/&gt;    &lt;code&gt;&lt;b class='cfe'&gt;&amp;lt;s:element name="Example"&amp;gt;&lt;/b&gt;&lt;/code&gt;&lt;br/&gt;        &amp;lt;s:complexType&amp;gt;&lt;br/&gt;          &amp;lt;s:sequence&amp;gt;&lt;br/&gt;            &amp;lt;s:element minOccurs="0" maxOccurs="1" name="cust" &lt;br/&gt;                       type="tns:ArrayOfCustomer" /&amp;gt;&lt;br/&gt;          &amp;lt;/s:sequence&amp;gt;&lt;br/&gt;        &amp;lt;/s:complexType&amp;gt;&lt;br/&gt;      &amp;lt;/s:element&amp;gt;&lt;br/&gt;      &amp;lt;s:complexType name="ArrayOfCustomer"&amp;gt;&lt;br/&gt;        &amp;lt;s:sequence&amp;gt;&lt;br/&gt;          &amp;lt;s:element minOccurs="0" maxOccurs="unbounded" &lt;br/&gt;                     name="Customer" nillable="true" &lt;br/&gt;                     type="tns:Customer" /&amp;gt;&lt;br/&gt;        &amp;lt;/s:sequence&amp;gt;&lt;br/&gt;      &amp;lt;/s:complexType&amp;gt;&lt;br/&gt;      &amp;lt;s:complexType name="Customer"&amp;gt;&lt;br/&gt;        &amp;lt;s:sequence&amp;gt;&lt;br/&gt;          &amp;lt;s:element minOccurs="0" maxOccurs="1" &lt;br/&gt;                     name="Name" type="s:string" /&amp;gt;&lt;br/&gt;          &amp;lt;s:element minOccurs="0" maxOccurs="1" &lt;br/&gt;                     name="Id" type="s:string" /&amp;gt;&lt;br/&gt;        &amp;lt;/s:sequence&amp;gt;&lt;br/&gt;      &amp;lt;/s:complexType&amp;gt;&lt;br/&gt;    &amp;lt;!-- Similarly, this element declaration describes the &lt;br/&gt;    contents of the soap:Body in the response message. &lt;br/&gt;    In this case the response is empty --&amp;gt;&lt;br/&gt;      &lt;code&gt;&lt;b class='cfe'&gt;&amp;lt;s:element name="ExampleResponse"&amp;gt;&lt;/b&gt;&lt;/code&gt;&lt;br/&gt;        &amp;lt;s:complexType /&amp;gt;&lt;br/&gt;      &amp;lt;/s:element&amp;gt;&lt;br/&gt;    &amp;lt;/s:schema&amp;gt;&lt;br/&gt;  &amp;lt;/types&amp;gt;&lt;br/&gt;  &amp;lt;message name="ExampleSoapIn"&amp;gt;&lt;br/&gt;    &amp;lt;!-- using element="" to reference an element declaration --&amp;gt;&lt;br/&gt;    &lt;code&gt;&lt;b class='cfe'&gt;&amp;lt;part name="parameters" element="tns:Example" /&amp;gt;&lt;/b&gt;&lt;/code&gt;&lt;br/&gt;  &amp;lt;/message&amp;gt;&lt;br/&gt;  &amp;lt;message name="ExampleSoapOut"&amp;gt;&lt;br/&gt;&lt;b&gt; &lt;code&gt;&lt;b class='cfe'&gt;&amp;lt;part name="parameters" element="tns:ExampleResponse" /&amp;gt;&lt;/b&gt;&lt;/code&gt;&lt;/b&gt;&lt;br/&gt;  &amp;lt;/message&amp;gt;&lt;br/&gt;  &amp;lt;portType name="testserviceSoap"&amp;gt;&lt;br/&gt;    &amp;lt;operation name="Example"&amp;gt;&lt;br/&gt;      &amp;lt;input message="tns:ExampleSoapIn" /&amp;gt;&lt;br/&gt;      &amp;lt;output message="tns:ExampleSoapOut" /&amp;gt;&lt;br/&gt;    &amp;lt;/operation&amp;gt;&lt;br/&gt;  &amp;lt;/portType&amp;gt;&lt;br/&gt;  &amp;lt;binding name="testserviceSoap" type="tns:testserviceSoap"&amp;gt;&lt;br/&gt;    &amp;lt;soap:binding &lt;br/&gt;         transport="http://schemas.xmlsoap.org/soap/http" &lt;br/&gt;         &lt;code&gt;&lt;b class='cfe'&gt;style="document"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;    &amp;lt;operation name="Example"&amp;gt;&lt;br/&gt;      &amp;lt;soap:operation &lt;br/&gt;           soapAction="http://example.org/soapformat/Example"/&amp;gt;&lt;br/&gt;      &amp;lt;input&amp;gt;&lt;br/&gt;        &amp;lt;soap:body &lt;code&gt;&lt;b class='cfe'&gt;use="literal"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;      &amp;lt;/input&amp;gt;&lt;br/&gt;      &amp;lt;output&amp;gt;&lt;br/&gt;        &amp;lt;soap:body &lt;code&gt;&lt;b class='cfe'&gt;use="literal"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;      &amp;lt;/output&amp;gt;&lt;br/&gt;    &amp;lt;/operation&amp;gt;&lt;br/&gt;  &amp;lt;/binding&amp;gt;&lt;br/&gt;&amp;lt;/definitions&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;h3 class='dtH1'&gt;Describing RPC/literal messages&lt;/h3&gt; &lt;p&gt;The listing below shows a WSDL example describing two RPC/literal messages. The salient features are:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul type='disc'&gt;&lt;li&gt;Each message contains zero or more parts. Each part points to a schema type definition that describes the &lt;i&gt;content&lt;/i&gt; of that part.&lt;/li&gt;&lt;li&gt;In the SOAP binding, the style is "RPC" and the use is "literal".&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The&lt;br /&gt;primary feature (if you can call it that) of RPC/literal, and its key&lt;br /&gt;drawback compared to document/literal, is the reliance on magic to know&lt;br /&gt;what &lt;b&gt;soap:Body&lt;/b&gt; contains. This means the schema alone does not&lt;br /&gt;tell you what the message body Infoset contains, you must also know the&lt;br /&gt;RPC rules. &lt;i&gt;&lt;b&gt;Therefore, the schema describing an RPC/literal message is not sufficient to validate that message.&lt;/b&gt; &lt;/i&gt;&lt;/p&gt; &lt;p&gt;The rules for deriving an RPC/literal message from its WSDL description are as follows:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul type='disc'&gt;&lt;li&gt;&lt;b&gt;Soap:Body&lt;/b&gt; contains one element which has the name of the WSDL operation and the namespace specified on the &lt;b&gt;soap:body&lt;/b&gt; element in the WSDL binding (see the &lt;b&gt;namespace="http://example.org/soapformat/Example"&lt;/b&gt; attribute in the listing below).&lt;/li&gt;&lt;li&gt;Inside&lt;br /&gt;this element, there's an element for each part of the message. The name&lt;br /&gt;of this element is the name of the part. This element is unqualified.&lt;/li&gt;&lt;li&gt;Inside each part element are the contents of that part, as defined by the schema type that the part references in WSDL.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Needless&lt;br /&gt;to say, there's quite a bit of magic that has to happen between the&lt;br /&gt;schema describing an RPC/literal message and the actual message on the&lt;br /&gt;wire. Document/literal eliminates this magic. &lt;/p&gt; &lt;div id='ctl00_rs1_mainContentContainer_ctl04_' class=''&gt;&lt;div class='CodeSnippetTitleBar'&gt;&lt;div class='CopyCodeButton'&gt;&lt;a href='javascript:CopyCode(&amp;apos;ctl00_rs1_mainContentContainer_ctl04&amp;apos;);' class='copyCode'&gt;&lt;img height='9' border='0' align='middle' src='http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif'/&gt; Copy Code&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre space='preserve' id='ctl00_rs1_mainContentContainer_ctl04' class='libCScode'&gt;&amp;lt;definitions &lt;br/&gt;xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" &lt;br/&gt;xmlns:s="http://www.w3.org/2001/XMLSchema" &lt;br/&gt;xmlns:tns="http://example.org/soapformat" &lt;br/&gt;xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" &lt;br/&gt;targetNamespace="http://example.org/soapformat" &lt;br/&gt;xmlns="http://schemas.xmlsoap.org/wsdl/"&amp;gt;&lt;br/&gt;  &amp;lt;types&amp;gt;&lt;br/&gt;    &amp;lt;s:schema elementFormDefault="qualified" &lt;br/&gt;              targetNamespace="http://example.org/soapformat"&amp;gt;&lt;br/&gt;&amp;lt;!-- there are no global element declarations. There's nothing in the &lt;br/&gt;schema that completely describes the content of soap:Body --&amp;gt;&lt;br/&gt;      &amp;lt;s:complexType name="ArrayOfCustomer"&amp;gt;&lt;br/&gt;        &amp;lt;s:sequence&amp;gt;&lt;br/&gt;          &amp;lt;s:element minOccurs="0" maxOccurs="unbounded" &lt;br/&gt;                     name="Customer" nillable="true" &lt;br/&gt;                     type="tns:Customer" /&amp;gt;&lt;br/&gt;        &amp;lt;/s:sequence&amp;gt;&lt;br/&gt;      &amp;lt;/s:complexType&amp;gt;&lt;br/&gt;      &amp;lt;s:complexType name="Customer"&amp;gt;&lt;br/&gt;        &amp;lt;s:sequence&amp;gt;&lt;br/&gt;          &amp;lt;s:element minOccurs="0" maxOccurs="1" &lt;br/&gt;                     name="Name" type="s:string" /&amp;gt;&lt;br/&gt;          &amp;lt;s:element minOccurs="0" maxOccurs="1" &lt;br/&gt;                     name="Id" type="s:string" /&amp;gt;&lt;br/&gt;        &amp;lt;/s:sequence&amp;gt;&lt;br/&gt;      &amp;lt;/s:complexType&amp;gt;&lt;br/&gt;    &amp;lt;/s:schema&amp;gt;&lt;br/&gt;  &amp;lt;/types&amp;gt;&lt;br/&gt;  &amp;lt;message name="ExampleSoapIn"&amp;gt;&lt;br/&gt;    &amp;lt;!-- using type="" to reference a type declaration --&amp;gt;&lt;br/&gt;    &lt;code&gt;&lt;b class='cfe'&gt;&amp;lt;part name="cust" type="tns:ArrayOfCustomer" /&amp;gt;&lt;/b&gt;&lt;/code&gt;&lt;br/&gt;  &amp;lt;/message&amp;gt;&lt;br/&gt;  &amp;lt;message name="ExampleSoapOut"/&amp;gt;&lt;br/&gt;  &amp;lt;portType name="testserviceSoap"&amp;gt;&lt;br/&gt;    &amp;lt;operation name="Example"&amp;gt;&lt;br/&gt;      &amp;lt;input message="tns:ExampleSoapIn" /&amp;gt;&lt;br/&gt;      &amp;lt;output message="tns:ExampleSoapOut" /&amp;gt;&lt;br/&gt;    &amp;lt;/operation&amp;gt;&lt;br/&gt;  &amp;lt;/portType&amp;gt;&lt;br/&gt;  &amp;lt;binding name="testserviceSoap" type="tns:testserviceSoap"&amp;gt;&lt;br/&gt;    &amp;lt;soap:binding &lt;br/&gt;         transport="http://schemas.xmlsoap.org/soap/http" &lt;br/&gt;         &lt;code&gt;&lt;b class='cfe'&gt;style="rpc"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;    &amp;lt;operation name="Example"&amp;gt;&lt;br/&gt;      &amp;lt;soap:operation &lt;br/&gt;           soapAction="http://example.org/soapformat/Example"/&amp;gt;&lt;br/&gt;      &amp;lt;input&amp;gt;&lt;br/&gt;        &amp;lt;soap:body &lt;br/&gt;          &lt;code&gt;&lt;b class='cfe'&gt;namespace="http://example.org/soapformat/Example"&lt;/b&gt;&lt;/code&gt;&lt;br/&gt;          &lt;code&gt;&lt;b class='cfe'&gt;use="literal"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;      &amp;lt;/input&amp;gt;&lt;br/&gt;      &amp;lt;output&amp;gt;&lt;br/&gt;        &amp;lt;soap:body &lt;code&gt;&lt;b class='cfe'&gt;use="literal"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;      &amp;lt;/output&amp;gt;&lt;br/&gt;    &amp;lt;/operation&amp;gt;&lt;br/&gt;  &amp;lt;/binding&amp;gt;&lt;br/&gt;&amp;lt;/definitions&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;h2 class='dtH1'&gt;&lt;a name='rpc_literal_topic3'/&gt;Converting RPC/literal to Document/literal&lt;/h2&gt; &lt;p&gt;RPC/literal&lt;br /&gt;turns out to be a subset of document/literal. This means for any given&lt;br /&gt;RPC/literal WSDL, you can create a completely equivalent&lt;br /&gt;document/literal WSDL that would describe the same wire messages. Here&lt;br /&gt;are the steps for doing this (mostly schema element declarations).&lt;/p&gt; &lt;h4 class='dtH1'&gt;For each RPC/literal operation&lt;/h4&gt; &lt;ol type='1'&gt;&lt;li&gt;For each part in the input and output messages of that operation, declare a type with the contents described in step 2.&lt;/li&gt;&lt;li&gt;Declare an element with the name of the part, the type referenced by &lt;b&gt;type="&lt;/b&gt;. The element form must be unqualified.&lt;/li&gt;&lt;li&gt;Declare a global element with the operation name and the namespace from &lt;b&gt;soap:body/@namespace&lt;/b&gt; in the binding. Make the type of this element the one defined in step 1 for the input message.&lt;/li&gt;&lt;li&gt;Declare a global element with the operation name and the word &lt;b&gt;Response&lt;/b&gt; appended to it and the namespace from &lt;b&gt;soap:body/@namespace&lt;/b&gt; in the binding. Make the type of this element the one defined in step 1 for the output message.&lt;/li&gt;&lt;li&gt;Change the input message to contain one part and reference the element you declared in step 3.&lt;/li&gt;&lt;li&gt;Change the output message to contain one part and reference the element you declared in step 4.&lt;/li&gt;&lt;li&gt;Change the style to &lt;b&gt;document&lt;/b&gt; in the binding.&lt;/li&gt;&lt;/ol&gt; &lt;h2 class='dtH1'&gt;&lt;a name='rpc_literal_topic4'/&gt;Do We Really Need Two Message Formats?&lt;/h2&gt; &lt;p&gt;So&lt;br /&gt;do we really need two message formats and all these contrived rules to&lt;br /&gt;derive a message from its description? Absolutely not—for two simple&lt;br /&gt;reasons:&lt;br /&gt;&lt;/p&gt;&lt;ul type='disc'&gt;&lt;li&gt;Document/literal is a superset of&lt;br /&gt;RPC/literal. For any given RPC/literal WSDL description, an equivalent&lt;br /&gt;document/literal WSDL description can be created such that the wire&lt;br /&gt;messages are identical. All that's needed is some schema manipulation&lt;br /&gt;to formally describe the RPC/literal message.&lt;/li&gt;&lt;li&gt;Message format&lt;br /&gt;and programming model are orthogonal. Requiring two message formats&lt;br /&gt;because there are two programming models is bogus. Furthermore, the&lt;br /&gt;service should not dictate the consumer's programming model.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I&lt;br /&gt;do acknowledge, however, the need for a programming model hint that&lt;br /&gt;allows service designers to indicate that their design is optimized for&lt;br /&gt;RPC or messaging programming models. This should be a simple hint that&lt;br /&gt;can be ignored, if desired, by consumer tools. For example, a global&lt;br /&gt;attribute on the binding or operation would do the trick:&lt;/p&gt; &lt;div id='ctl00_rs1_mainContentContainer_ctl05_' class=''&gt;&lt;div class='CodeSnippetTitleBar'&gt;&lt;div class='CopyCodeButton'&gt;&lt;a href='javascript:CopyCode(&amp;apos;ctl00_rs1_mainContentContainer_ctl05&amp;apos;);' class='copyCode'&gt;&lt;img height='9' border='0' align='middle' src='http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif'/&gt; Copy Code&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre space='preserve' id='ctl00_rs1_mainContentContainer_ctl05' class='libCScode'&gt;&amp;lt;binding &lt;br/&gt;xmlns:x="http://example.org/descriptionHints"&lt;br/&gt;name="testserviceSoap" &lt;br/&gt;type="tns:testserviceSoap"&lt;br/&gt;&amp;lt;!-- the service developer suggests RPC programming style --&amp;gt; &lt;br/&gt;&lt;code&gt;&lt;b class='cfe'&gt;x:hint="rpc"&lt;/b&gt;&lt;/code&gt;&amp;gt;&lt;br/&gt;  &amp;lt;soap:binding &lt;br/&gt;       transport="http://schemas.xmlsoap.org/soap/http" &lt;br/&gt;       &lt;code&gt;&lt;b class='cfe'&gt;style="document"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;  &amp;lt;operation name="Example"&amp;gt;&lt;br/&gt;    &amp;lt;soap:operation &lt;br/&gt;         soapAction="http://example.org/soapformat/Example"/&amp;gt;&lt;br/&gt;    &amp;lt;input&amp;gt;&lt;br/&gt;      &amp;lt;soap:body &lt;br/&gt;        &lt;code&gt;&lt;b class='cfe'&gt;use="literal"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;    &amp;lt;/input&amp;gt;&lt;br/&gt;    &amp;lt;output&amp;gt;&lt;br/&gt;      &amp;lt;soap:body &lt;code&gt;&lt;b class='cfe'&gt;use="literal"&lt;/b&gt;&lt;/code&gt; /&amp;gt;&lt;br/&gt;    &amp;lt;/output&amp;gt;&lt;br/&gt;  &amp;lt;/operation&amp;gt;&lt;br/&gt;&amp;lt;/binding&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;p&gt;As&lt;br /&gt;a case in point, .NET-based Web services expose an RPC programming&lt;br /&gt;model and, by default, use document/literal messages. The hint&lt;br /&gt;Microsoft .NET development tools rely on is the name of the message&lt;br /&gt;part in WSDL. If that name is "parameters," the WSDL consumer assumes&lt;br /&gt;that there's a method named after the part's global element declaration&lt;br /&gt;and that each element within that part is a parameter of the method.&lt;br /&gt;The way Microsoft .NET works is only interesting as an example proving&lt;br /&gt;that the RPC programming model and document/literal messages can&lt;br /&gt;coexist. I'm not suggesting everyone should adopt the "parameters"&lt;br /&gt;hint. Another, more explicit mechanism such as a global attribute would&lt;br /&gt;be preferable, as it more clearly indicates the hint and does not&lt;br /&gt;overload the use of the part name.&lt;/p&gt; &lt;h2 class='dtH1'&gt;&lt;a name='rpc_literal_topic5'/&gt;WS-I Basic Profile and RPC/literal&lt;/h2&gt; &lt;p&gt;Unfortunately,&lt;br /&gt;the WS-I Basic Profile explicitly permits the use of both&lt;br /&gt;document/literal and RPC/literal. Given the above analysis, I believe&lt;br /&gt;having two message formats is unnecessary and ultimately does not help&lt;br /&gt;interoperability. Hopefully, most if not all Web service developers&lt;br /&gt;will ignore RPC/literal and provide the necessary &lt;a href='mailto:wsbasic_comment@ws-i.org'&gt;feedback&lt;/a&gt; to WS-I to fix this in a future version of the Basic Profile. &lt;/p&gt;&lt;pre space='preserve' id='ctl00_rs1_mainContentContainer_ctl02' class='libCScode'&gt;&lt;br/&gt;    &amp;lt;/x:Example&amp;gt;&lt;br/&gt;  &amp;lt;/soap:Body&amp;gt;&lt;br/&gt;&amp;lt;/soap:Envelope&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-8054831595790047457?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/8054831595790047457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=8054831595790047457' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/8054831595790047457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/8054831595790047457'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/06/rpcliteral-vs-docliteral.html' title='rpc/literal vs doc/literal'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-2118261007272791637</id><published>2008-03-17T10:32:00.001+08:00</published><updated>2008-03-17T10:32:19.162+08:00</updated><title type='text'>Indian names as IT software codenames- spreading fast</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;As a regular IT surfer, not a day goes by without coming across an Indian Name for an IT component/architecture, signalling as strong rise of Indian Architects. In a way, this signals the Indian IT industry coming of age. Once predominantly composed of 'Developers', the industry has recently seen an upsurge of capable Indian IT Architects/Planners/Managers. From discussions with fellow peers, almost 50% of the interview candidates of IT architect positions are Indians, a remarkable rise from the scenario a couple of year ago. &lt;br/&gt;&lt;br/&gt;This post was inspired by Arjuna (JBossTS)  http://labs.jboss.com/jbosstm/&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-2118261007272791637?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/2118261007272791637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=2118261007272791637' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/2118261007272791637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/2118261007272791637'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/03/indian-names-as-it-software-codenames.html' title='Indian names as IT software codenames- spreading fast'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-8777824425843883078</id><published>2008-03-13T12:20:00.000+08:00</published><updated>2008-12-10T01:39:33.554+08:00</updated><title type='text'>Testing Image Post</title><content type='html'>&lt;p class="mobile-photo"&gt;&lt;a href="http://1.bp.blogspot.com/_UBDTWglQ6-Y/R9irzuPA0xI/AAAAAAAAAAY/JAYxsO1sCEQ/s1600-h/DSC06551-789821.JPG"&gt;&lt;img src="http://1.bp.blogspot.com/_UBDTWglQ6-Y/R9irzuPA0xI/AAAAAAAAAAY/JAYxsO1sCEQ/s320/DSC06551-789821.JPG"  border="0" alt="" id="BLOGGER_PHOTO_ID_5177076676735062802" /&gt;&lt;/a&gt;&lt;/p&gt;Just a random email post&lt;br&gt; &lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-8777824425843883078?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/8777824425843883078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=8777824425843883078' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/8777824425843883078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/8777824425843883078'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2008/03/testing-image-post.html' title='Testing Image Post'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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://1.bp.blogspot.com/_UBDTWglQ6-Y/R9irzuPA0xI/AAAAAAAAAAY/JAYxsO1sCEQ/s72-c/DSC06551-789821.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11705241.post-3113971034445906343</id><published>2007-11-10T16:16:00.001+08:00</published><updated>2007-11-11T06:19:57.933+08:00</updated><title type='text'>WSDL Refresher</title><content type='html'>&lt;p style="color:#008;text-align:right;"&gt;&lt;small&gt;&lt;em&gt;Powered by&lt;/em&gt; &lt;a href="http://www.qumana.com/"&gt;Qumana&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="text-decoration:underline"&gt;&lt;span style="font-family:Helvetica"&gt;&amp;lt;xsd:element&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Helvetica"&gt; &lt;/span&gt;defines the elements, and can include complex types within it. One style/pattern of defining the elements is:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Style1&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;complex type 1&lt;/p&gt;&lt;br /&gt;&lt;p&gt;complex type2&lt;/p&gt;&lt;br /&gt;&lt;p&gt;element1 uses complex type1&lt;/p&gt;&lt;br /&gt;&lt;p&gt;element 2 uses complex type 2&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;em&gt;then inside&lt;/em&gt; the wsdl:message the element is referenced using&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="text-decoration:underline"&gt;wsdl:part&lt;/span&gt; name=&amp;quot;anyname&amp;quot; element=element1&lt;/p&gt;&lt;br /&gt;&lt;p&gt;OR one can directly DEFINE the element inside the message as in style2&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Style2&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="text-decoration:underline"&gt;&amp;lt;wsdl:message&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;element1 uses complex type1&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;/wsdl:message&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;once the message is defined using the xsd types and user defined complex types, the message is used as part of an operation&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="text-decoration:underline"&gt;&amp;lt;wsdl:operation&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;&lt;span style="text-decoration:underline"&gt;wsdl:input  &lt;/span&gt; message= messagename1 &amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;&lt;span style="text-decoration:underline"&gt;wsdl:output &lt;/span&gt; message= messagename2 &amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;One/group of operations form a porttype&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="text-decoration:underline"&gt;&amp;lt;wsdl:porttype&lt;/span&gt; name=    operation=&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;A porttype is thus a grop of technology independent interfaces.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;However interfaces in the end need to be implemented using technology. A possible way of calling/using the interface is using SOAP (technology)&lt;/p&gt;&lt;br /&gt;&lt;p&gt;To take it to this next level, a binding is used. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;wsdl:binding type=portname&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;soap:binding style=&amp;quot;document&amp;quot; transport=&amp;quot;http://schemas.xmlsoap.org/soap/http&amp;quot;/&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;wsdl:operation name=opName&amp;gt;&lt;br /&gt; &amp;lt;wsdl:input&amp;gt;&lt;br /&gt; &amp;lt;soap:body use=&amp;quot;literal&amp;quot;/&amp;gt;&lt;br /&gt; &amp;lt;/wsdl:input&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;and same for o/p&lt;/p&gt;&lt;br /&gt;&lt;p&gt;but how will the binding be called? for SOAP its through a URI. This forms the service&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;wsdl:service name=&amp;quot;srvname&amp;quot;&amp;gt;&lt;br /&gt; &amp;lt;wsdl:port name=&amp;quot;SOAPbindingname&amp;quot; binding=&amp;quot;tns:TravelOneServiceSOAP&amp;quot;&amp;gt;&lt;br /&gt; &amp;lt;soap:address location=&amp;quot;http://localhost:xxx/URL&amp;quot;/&amp;gt;&lt;br /&gt; &amp;lt;/wsdl:port&amp;gt;&lt;br /&gt; &amp;lt;/wsdl:service&amp;gt;&lt;br /&gt;&amp;lt;/wsdl:definitions&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;wsdl:message&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-3113971034445906343?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/3113971034445906343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=3113971034445906343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/3113971034445906343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/3113971034445906343'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2007/11/wsdl-refresher.html' title='WSDL Refresher'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-6319887675847555111</id><published>2007-11-06T11:02:00.001+08:00</published><updated>2007-11-10T13:40:11.040+08:00</updated><title type='text'>JNDI resource eferences and resource environment references</title><content type='html'>&lt;p style="color:#008;text-align:right;"&gt;&lt;small&gt;&lt;em&gt;Powered by&lt;/em&gt; &lt;a href="http://www.qumana.com/"&gt;Qumana&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The client/server app can have coded entries that are seperate from the FINAL environment JNDI entries. This helps in differentiating coding from application assembly.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;So inside the code you may have ctx.lookup(&amp;quot;java:env/jms/blah1&amp;quot;) but using the concept of &amp;quot;Resource References&amp;quot; and &amp;quot;Resource Environment References&amp;quot; you can map it up to &amp;quot;java:env/jms/blah2&amp;quot;. The blah2 should be valid in the actual production environment. This avoids the need to change code or deployment descriptors.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Take a situaiton without them: the coder puts in blah1, but the server has blah2 which is being used by other programs already! now either has to change!- thatz where this comes in.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The funny part is that ResourceReference supports DB, Qconnections etc but does not support Queues. The support for JMS Queues (and their reference mapping) is covered under Resource Environment References.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The resource reference covers AS administered only and hence queue is dropped out.&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-6319887675847555111?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/6319887675847555111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=6319887675847555111' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6319887675847555111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6319887675847555111'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2007/11/jndi-resource-eferences-and-resource.html' title='JNDI resource eferences and resource environment references'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-5099699713079956883</id><published>2007-10-19T16:10:00.001+08:00</published><updated>2007-10-19T16:10:42.385+08:00</updated><title type='text'>Websphere MQ and Broker path, classpath settings</title><content type='html'>&lt;p style="color:#008;text-align:right;"&gt;&lt;small&gt;&lt;em&gt;Powered by&lt;/em&gt; &lt;a href="http://www.qumana.com/"&gt;Qumana&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;MQ and Broker have IBM java underpinnings while I was focussing on Sun JVM's for sometime. Realized that they were causing some confusion and breaks. I am noting down the settings, so that they can be put back as required later.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Note:setx command from XP SP2 can help do what 'export' does for Unix/Linux&lt;/p&gt;&lt;br /&gt;&lt;p&gt;PATH=H:\websphere\IBM\WebSphere MQ\Java\lib;H:\websphere\IBM\WebSphere MQ\bin;H:\websphere\IBM\WebSphere MQ\tools\c\samples\bin;H:\websphere\IBM\WebSphere;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;CLASSPATH&lt;/p&gt;&lt;br /&gt;&lt;p&gt;H:\websphere\IBM\WebSphere MQ\lib\com.ibm.mqetclient.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\providerutil.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\com.ibm.mqjms.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\ldap.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\jta.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\jndi.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\jms.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\connector.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\fscontext.jar;H:\websphere\IBM\WebSphere MQ\Java\lib\com.ibm.mq.jar;&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-5099699713079956883?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/5099699713079956883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=5099699713079956883' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5099699713079956883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5099699713079956883'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2007/10/websphere-mq-and-broker-path-classpath.html' title='Websphere MQ and Broker path, classpath settings'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-5843905125615813591</id><published>2007-10-06T04:13:00.001+08:00</published><updated>2007-10-06T04:13:23.740+08:00</updated><title type='text'>TN5250j: Term Emulator for AS/400 OS/400</title><content type='html'>&lt;p style="color:#008;text-align:right;"&gt;&lt;small&gt;&lt;em&gt;Powered by&lt;/em&gt; &lt;a href="http://www.qumana.com/"&gt;Qumana&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Neat stuff: Applet'able, with advanced GUI features&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Reason why it was built was there was not good java implementation of 5250 emulation. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;this can also be hosted on the iSeries HTTP server. Also allows for file transfers.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Therz also a C based one http://tn5250.sourceforge.net/&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-5843905125615813591?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/5843905125615813591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=5843905125615813591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5843905125615813591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5843905125615813591'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2007/10/tn5250j-term-emulator-for-as400-os400.html' title='TN5250j: Term Emulator for AS/400 OS/400'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-5335690770767786748</id><published>2007-10-05T09:09:00.001+08:00</published><updated>2007-10-05T09:09:19.243+08:00</updated><title type='text'>eXtremeProgramming-XP: Key Takes</title><content type='html'>&lt;p style="color:#008;text-align:right;"&gt;&lt;small&gt;&lt;em&gt;Powered by&lt;/em&gt; &lt;a href="http://www.qumana.com/"&gt;Qumana&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;User Stories:&lt;/strong&gt; help estimate for release planning and are like usecases.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;They are similar to usage scenarios, except that they are not limited to describing a user interface. They are in the format of about three sentences of text written by the customer in the customers terminology without techno-syntax.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Make frequent &lt;a href="http://www.extremeprogramming.org/rules/releaseoften.html" onmouseout="imageOff('releaseoften')" onmouseover="imageOn('releaseoften')"&gt;small releases&lt;/a&gt;, &lt;strong&gt;iteratively,&lt;/strong&gt; have an &lt;strong&gt;iteration plan&lt;/strong&gt; in each iteration&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Move ppl around: rotate code segments among ppl&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;CRC Cards: &lt;/strong&gt;Use ClaUse Class, Responsibilities, and Collaboration (CRC) Cards to design the system as a team. The biggest value of CRC cards is to allow people to break away from the procedural mode of thought and more fully appreciate object technologyss, Responsibilities, and Collaboration (CRC) Cards to design the system as a team. The biggest value of CRC cards is to allow people to break away from the procedural mode of thought and more fully appreciate object technology&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Never add functionality &lt;a href="http://www.extremeprogramming.org/rules/early.html" onmouseout="imageOff('early')" onmouseover="imageOn('early')"&gt;early&lt;/a&gt;&lt;/strong&gt;: Keep the system uncluttered with extra stuff you guess will be used later. My add: Only create placeholders if required.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Refactor:&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;We continue to use and reuse code that is no longer maintainable because it still works in some way and we are afraid to modify it. But is it really cost effective to do so? Extreme Programming (XP) takes the stance that it is not.&lt;/p&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;        &lt;td valign="top" width="300"&gt;There is a certain amount of Zen to refactoring. It is hard at first because you must be&lt;/td&gt;&lt;br /&gt;        &lt;td valign="top" width="300"&gt;&lt;img height="173" border="0" usemap="#codesml" width="300" alt="" src="http://www.extremeprogramming.org/map/images/codesml.gif" align="bottom" /&gt;&lt;br /&gt; able to let go of that perfect design you have envisioned and accept the design that was serendipitously discovered for you by refactoring. You must realize that the design you envisioned was a good guide post, but is now obsolete.&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;h2&gt;Pair Programming&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;All code to be included in a production release is created by two people working together at a single computer. Pair programming increases software quality without impacting time to deliver. It is counter intuitive, but 2 people working at a single computer will add as much functionality as two working separately except that it will be much higher in quality. With increased quality comes big savings later in the project.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;OVERALL&lt;/p&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;        &lt;td valign="top" width="300"&gt;&lt;br /&gt;            &lt;h3 align="center"&gt;Planning&lt;/h3&gt;&lt;br /&gt;            &lt;p&gt;&lt;a href="http://www.extremeprogramming.org/rules/userstories.html" onmouseout="imageOff('stories')" onmouseover="imageOn('stories')"&gt;&lt;img height="12" name="stories" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; User stories&lt;/a&gt; are written.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/planninggame.html" onmouseout="imageOff('game')" onmouseover="imageOn('game')"&gt;&lt;img height="12" name="game" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; &lt;a href="http://www.extremeprogramming.org/rules/planninggame.html" onmouseout="imageOff('game')" onmouseover="imageOn('game')"&gt;Release planning&lt;/a&gt; creates the schedule.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/releaseoften.html" onmouseout="imageOff('releaseoften')" onmouseover="imageOn('releaseoften')"&gt;&lt;img height="12" name="releaseoften" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Make frequent &lt;a href="http://www.extremeprogramming.org/rules/releaseoften.html" onmouseout="imageOff('releaseoften')" onmouseover="imageOn('releaseoften')"&gt;small releases&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/velocity.html" onmouseout="imageOff('load')" onmouseover="imageOn('load')"&gt;&lt;img height="12" name="load" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; The &lt;a href="http://www.extremeprogramming.org/rules/velocity.html" onmouseout="imageOff('load')" onmouseover="imageOn('load')"&gt;Project Velocity&lt;/a&gt; is measured.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/iterative.html" onmouseout="imageOff('iterative')" onmouseover="imageOn('iterative')"&gt;&lt;img height="12" name="iterative" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; The project is divided into &lt;a href="http://www.extremeprogramming.org/rules/iterative.html" onmouseout="imageOff('iterative')" onmouseover="imageOn('iterative')"&gt;iterations&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/iterationplanning.html" onmouseout="imageOff('iteration')" onmouseover="imageOn('iteration')"&gt;&lt;img height="12" name="iteration" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; &lt;a href="http://www.extremeprogramming.org/rules/iterationplanning.html" onmouseout="imageOff('iteration')" onmouseover="imageOn('iteration')"&gt;Iteration planning&lt;/a&gt; starts each iteration.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/movepeople.html" onmouseout="imageOff('move')" onmouseover="imageOn('move')"&gt;&lt;img height="12" name="move" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; Move people around&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/standupmeeting.html" onmouseout="imageOff('stand')" onmouseover="imageOn('stand')"&gt;&lt;img height="12" name="stand" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; A &lt;a href="http://www.extremeprogramming.org/rules/standupmeeting.html" onmouseout="imageOff('stand')" onmouseover="imageOn('stand')"&gt;stand-up meeting&lt;/a&gt; starts each day.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/fixit.html" onmouseout="imageOff('fix')" onmouseover="imageOn('fix')"&gt;&lt;img height="12" name="fix" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; Fix XP&lt;/a&gt; when it breaks.&lt;/p&gt;&lt;br /&gt;            &lt;h3 align="center"&gt;Designing&lt;/h3&gt;&lt;br /&gt;            &lt;p&gt;&lt;a href="http://www.extremeprogramming.org/rules/simple.html" onmouseout="imageOff('simple')" onmouseover="imageOn('simple')"&gt;&lt;img height="12" name="simple" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; Simplicity&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/metaphor.html" onmouseout="imageOff('metaphor')" onmouseover="imageOn('metaphor')"&gt;&lt;img height="12" name="metaphor" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Choose a &lt;a href="http://www.extremeprogramming.org/rules/metaphor.html" onmouseout="imageOff('metaphor')" onmouseover="imageOn('metaphor')"&gt;system metaphor&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/crccards.html" onmouseout="imageOff('crc')" onmouseover="imageOn('crc')"&gt;&lt;img height="12" name="crc" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Use &lt;a href="http://www.extremeprogramming.org/rules/crccards.html" onmouseout="imageOff('crc')" onmouseover="imageOn('crc')"&gt;CRC cards&lt;/a&gt; for design sessions.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/spike.html" onmouseout="imageOff('spike')" onmouseover="imageOn('spike')"&gt;&lt;img height="12" name="spike" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Create &lt;a href="http://www.extremeprogramming.org/rules/spike.html" onmouseout="imageOff('spike')" onmouseover="imageOn('spike')"&gt;spike solution&lt;/a&gt;s to reduce risk.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/early.html" onmouseout="imageOff('early')" onmouseover="imageOn('early')"&gt;&lt;img height="12" name="early" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; No functionality is &lt;a href="http://www.extremeprogramming.org/rules/early.html" onmouseout="imageOff('early')" onmouseover="imageOn('early')"&gt;added early&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/refactor.html" onmouseout="imageOff('refactor')" onmouseover="imageOn('refactor')"&gt;&lt;img height="12" name="refactor" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; Refactor&lt;/a&gt; whenever and wherever possible.&lt;/p&gt;&lt;br /&gt;        &lt;/td&gt;&lt;br /&gt;        &lt;td valign="top" width="300"&gt;&lt;br /&gt;            &lt;h3 align="center"&gt;Coding&lt;/h3&gt;&lt;br /&gt;            &lt;p&gt;&lt;a href="http://www.extremeprogramming.org/rules/customer.html" onmouseout="imageOff('customer')" onmouseover="imageOn('customer')"&gt;&lt;img height="12" name="customer" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; The customer is &lt;a href="http://www.extremeprogramming.org/rules/customer.html" onmouseout="imageOff('customer')" onmouseover="imageOn('customer')"&gt;always available&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/standards.html" onmouseout="imageOff('standard')" onmouseover="imageOn('standard')"&gt;&lt;img height="12" name="standard" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Code must be written to agreed &lt;a href="http://www.extremeprogramming.org/rules/standards.html" onmouseout="imageOff('standard')" onmouseover="imageOn('standard')"&gt;standards&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/testfirst.html" onmouseout="imageOff('first')" onmouseover="imageOn('first')"&gt;&lt;img height="12" name="first" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Code the &lt;a href="http://www.extremeprogramming.org/rules/testfirst.html" onmouseout="imageOff('first')" onmouseover="imageOn('first')"&gt;unit test first&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/pair.html" onmouseout="imageOff('pair')" onmouseover="imageOn('pair')"&gt;&lt;img height="12" name="pair" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; All production code is &lt;a href="http://www.extremeprogramming.org/rules/pair.html" onmouseout="imageOff('pair')" onmouseover="imageOn('pair')"&gt;pair programmed&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/sequential.html" onmouseout="imageOff('sequence')" onmouseover="imageOn('sequence')"&gt;&lt;img height="12" name="sequence" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Only one pair &lt;a href="http://www.extremeprogramming.org/rules/sequential.html" onmouseout="imageOff('sequence')" onmouseover="imageOn('sequence')"&gt;integrates code at a time&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/integrateoften.html" onmouseout="imageOff('integrateoften')" onmouseover="imageOn('integrateoften')"&gt;&lt;img height="12" name="integrateoften" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; Integrate often&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/collective.html" onmouseout="imageOff('collective')" onmouseover="imageOn('collective')"&gt;&lt;img height="12" name="collective" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Use &lt;a href="http://www.extremeprogramming.org/rules/collective.html" onmouseout="imageOff('collective')" onmouseover="imageOn('collective')"&gt;collective code ownership&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/optimize.html" onmouseout="imageOff('optimize')" onmouseover="imageOn('optimize')"&gt;&lt;img height="12" name="optimize" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; Leave &lt;a href="http://www.extremeprogramming.org/rules/optimize.html" onmouseout="imageOff('optimize')" onmouseover="imageOn('optimize')"&gt;optimization&lt;/a&gt; till last.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/overtime.html" onmouseout="imageOff('over')" onmouseover="imageOn('over')"&gt;&lt;img height="12" name="over" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; No &lt;a href="http://www.extremeprogramming.org/rules/overtime.html" onmouseout="imageOff('over')" onmouseover="imageOn('over')"&gt;overtime&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;            &lt;h3 align="center"&gt;Testing&lt;/h3&gt;&lt;br /&gt;            &lt;p&gt;&lt;a href="http://www.extremeprogramming.org/rules/unittests.html" onmouseout="imageOff('alltested')" onmouseover="imageOn('alltested')"&gt;&lt;img height="12" name="alltested" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; All code must have &lt;a href="http://www.extremeprogramming.org/rules/unittests.html" onmouseout="imageOff('alltested')" onmouseover="imageOn('alltested')"&gt;unit tests&lt;/a&gt;.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/unittests.html" onmouseout="imageOff('pass')" onmouseover="imageOn('pass')"&gt;&lt;img height="12" name="pass" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; All code must pass all &lt;a href="http://www.extremeprogramming.org/rules/unittests.html" onmouseout="imageOff('pass')" onmouseover="imageOn('pass')"&gt;unit tests&lt;/a&gt; before it&lt;br /&gt; &lt;img height="4" border="0" width="30" alt=" " src="http://www.extremeprogramming.org/images/pixel.gif" align="bottom" /&gt;can be released.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/bugs.html" onmouseout="imageOff('bug')" onmouseover="imageOn('bug')"&gt;&lt;img height="12" name="bug" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt;&lt;/a&gt; When &lt;a href="http://www.extremeprogramming.org/rules/bugs.html" onmouseout="imageOff('bug')" onmouseover="imageOn('bug')"&gt;a bug is found&lt;/a&gt; tests are created.&lt;br /&gt; &lt;a href="http://www.extremeprogramming.org/rules/functionaltests.html" onmouseout="imageOff('func')" onmouseover="imageOn('func')"&gt;&lt;img height="12" name="func" border="0" width="25" alt=" " src="http://www.extremeprogramming.org/images/xplinktn.gif" align="bottom" /&gt; Acceptance tests&lt;/a&gt; are run often and the score&lt;br /&gt; &lt;img height="4" border="0" width="30" alt=" " src="http://www.extremeprogramming.org/images/pixel.gif" align="bottom" /&gt;is published.&lt;/p&gt;&lt;br /&gt;        &lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-5335690770767786748?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/5335690770767786748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=5335690770767786748' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5335690770767786748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/5335690770767786748'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2007/10/extremeprogramming-xp-key-takes.html' title='eXtremeProgramming-XP: Key Takes'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-7864368235184332907</id><published>2007-10-05T06:31:00.001+08:00</published><updated>2007-10-05T06:31:17.148+08:00</updated><title type='text'>J2EE Dangers - - Excerpts</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="color:#008;text-align:right;"&gt;&lt;small&gt;&lt;em&gt;Powered by&lt;/em&gt; &lt;a href="http://www.qumana.com/"&gt;Qumana&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;From: http://www.javaworld.com/javaworld/jw-03-2001/jw-0330-ten.html?page=2&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Vendor Sel: 1,5&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Desgin: 2,3,7,10   -  1,5&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Dev: 6,8,9   -  1,2,3,5,7&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Stabilization/Load Testing :   -1,2,3,5,6,7,9&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Live: 4 - almost everything&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:16pt"&gt;1. Not understanding Java, not understanding EJB, not understanding J2EE&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Not knowing what any or all of the following are and what they do (this list represents just a sample of topics):&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;    &lt;li&gt;Garbage collector (train, generational, incremental, synchronous, asynchronous)&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;When objects can be garbage collected -- dangling references&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Inheritance mechanisms used (and their tradeoffs) in Java&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Method over-riding and over-loading&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Why &lt;code&gt;java.lang.String&lt;/code&gt; (substitute your favorite class here!) proves bad for performance&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Pass-by reference semantics of Java (versus pass-by value semantics in EJB)&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Using &lt;code&gt;==&lt;/code&gt; versus implementing the &lt;code&gt;equals()&lt;/code&gt; method for nonprimitives&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;How Java schedules threads on different platforms (for example, pre-emptive or not)&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Green threads versus native threads&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Hotspot (and why old performance tuning techniques negate Hotspot optimizations)&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;The JIT and when good JITs go bad (unset &lt;code&gt;JAVA_COMPILER&lt;/code&gt; and your code runs just fine, etc.)&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;The Collections API&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;RMI&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;.Not understanding J2EE&lt;/p&gt;&lt;br /&gt;&lt;h4&gt;Symptoms:&lt;/h4&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;    &lt;li&gt;The &amp;quot;Everything is an EJB&amp;quot; design&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Manual transaction management instead of using the container-provided mechanisms&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Custom security implementations -- the J2EE platform has probably the most complete and integrated security architecture in enterprise computing, from presentation right through to the back end; it is rarely used to its full capabilities&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:16pt"&gt;2. Over-engineering (to EJB or not to EJB)&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;h4&gt;Symptoms:&lt;/h4&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;    &lt;li&gt;Oversized EJBs&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Developers who can't explain what their EJBs do and the relationships among them&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Nonreusable EJBs, components, or services when they should be&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;EJBs starting new transactions when an existing transaction will do&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Data isolation levels set too high (in an attempt to be safe)&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:16pt"&gt;3.Not separating presentation logic from business logic&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;h4&gt;&lt;span style="font-size:16pt"&gt;4.Not deploying where you develop&lt;/span&gt;&lt;/h4&gt;&lt;br /&gt;&lt;p&gt;Also, get a snapshot of data from the production database and use it for testing, don't rely on artificially created data. If production data is sensitive, desensitize it and load it up.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:16pt"&gt;5. Choosing the wrong vendors&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Poor or zero integration between different tools (application servers and IDEs, IDEs and debuggers, source control and build tools, the list goes on)&lt;/p&gt;&lt;br /&gt;&lt;p&gt;For IDEs, debuggers, etc., developers simply forsaking them in favor of their own favorite tools&lt;/p&gt;&lt;br /&gt;&lt;h3&gt;6. Not knowing your vendors&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;To avoid the dangers resulting from not knowing your vendors, subscribe to all the vendor-supplied support resources you can find such as email lists, news groups, and release notes (especially those with a list of bug fixes); you will get invaluable information.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Create a BUILD process well in advance&lt;/p&gt;&lt;br /&gt;&lt;p&gt;How transferable are vendor-specific skills in the J2EE world? Let's look at a concrete example of how two vendors -- IBM and BEA Systems Inc. -- that support EJB 1.1 produce dissimilar application servers. Indeed, how alike are BEA WebLogic 5.1 and IBM WebSphere 3.5?&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;    &lt;li&gt;BEA WebLogic is configured and administered in a completely different manner than IBM WebSphere.&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;IBM adopted an all-GUI environment philosophy with WebSphere. In contrast, BEA provided a whole host of command line utilities with WebLogic.&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;IBM WebSphere uses IIOP to communicate and throws CORBA exceptions that are visible to the programmer; WebLogic has no CORBA infrastructure at all, and uses the t3 protocol by default.&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;WebSphere is joined at the hip with Visual Age, while WebLogic is more IDE-agnostic. Indeed, you can develop for WebLogic using almost any IDE.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Being an expert on one application server does not mean you are an expert on all&lt;/strong&gt;. The arguments above apply to anything: IDEs, debuggers, build tools, configuration management, and so on. &lt;strong&gt;. As such, allow yourself the time required to be skilled with your tools.&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;h3&gt;7.Not designing for scalability or performance&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;With Danger 7, close in on your performance and scalability requirements in the scoping phase -- know what numbers you need to hit before you move into development. If you know you need 50 transactions per second and your all-entity bean design will provide only 40, then you need to look at alternative solutions such as stored procedures, batch processes, or reworked OLTP aspects of your system.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Involve your vendor as much as possible in the scaling requirements -- they should know the strong and weak characteristics of their product and help you accordingly.&lt;/p&gt;&lt;br /&gt;&lt;h3&gt;8.Antiquated development processes&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;use a well defined methodology. ensure build process is in place.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Good unit testing in place&lt;small&gt;Tags: &lt;a rel="tag" href="http://technorati.com/tag/J2EE+java+pitfalls+dangers"&gt;J2EE java pitfalls dangers&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;&lt;br /&gt;&lt;h3&gt;9.Failure to employ frameworks&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;+ no logging standards, bad exception handling framework&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The following tasks are handled in a myriad of ways by developers and should be among the first targets of any framework:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;    &lt;li&gt;Logging&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Exception handling&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Getting a connection to a resource (database, naming service, and so on)&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Building JSP pages&lt;/li&gt;&lt;br /&gt;    &lt;li&gt;Data validation&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;Basing project plans and designs on marketing blurb, not on technical fact&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-7864368235184332907?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/7864368235184332907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=7864368235184332907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7864368235184332907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/7864368235184332907'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2007/10/j2ee-dangers-excerpts.html' title='J2EE Dangers - - Excerpts'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-6346393327798374906</id><published>2006-11-21T09:32:00.000+08:00</published><updated>2006-11-21T09:34:40.583+08:00</updated><title type='text'>makefile and indian weddings</title><content type='html'>transcript of a tech chat by a friend- how a makefile compares to a indian wedding&lt;br /&gt;&lt;br /&gt;(14:42:32) Wes McCullough: went to a full Hindu wedding this weekend&lt;br /&gt;(14:42:39) Wes McCullough: the program was long &lt;br /&gt;(14:42:45) Wes McCullough: it reminded me of a Makefile&lt;br /&gt;(14:42:47) Wes McCullough: lots of steps&lt;br /&gt;(14:43:19) viral shah: :-)!&lt;br /&gt;(14:43:29) viral shah: wasn't your wedding a full hindu wedding?&lt;br /&gt;(14:43:38) Wes McCullough: the minimum full wedding &lt;br /&gt;(14:43:41) Wes McCullough: only an hour&lt;br /&gt;(14:43:43) Wes McCullough: this one was like 3&lt;br /&gt;(14:43:44) viral shah: mine was spread over 3 days!&lt;br /&gt;(14:43:46) Wes McCullough: nice&lt;br /&gt;(14:43:50) viral shah: actully 2.5 days&lt;br /&gt;(14:44:00) Wes McCullough: yeah, I hear that's how it works in India&lt;br /&gt;(14:44:09) Wes McCullough: they opened the buffet during the ceremony&lt;br /&gt;(14:44:13) viral shah: different 'functions' in each day...&lt;br /&gt;(14:44:26) Wes McCullough: so I guess they don't care about people paying attention as much&lt;br /&gt;(14:44:45) viral shah: you are actually right about it resembling a make file... except that you are running make clean several times to ensure that you both are pure... :-)&lt;br /&gt;(14:44:53) Wes McCullough: exactly&lt;br /&gt;(14:45:06) Wes McCullough: gave me the idea to do a Hindu version of the "starting a server" twiki&lt;br /&gt;(14:45:18) Wes McCullough: first you run "make clean" to invoke Ganesh to remove all obstacles&lt;br /&gt;(14:45:44) Wes McCullough: then after the server is up, you run the seven queries&lt;br /&gt;(14:46:01) viral shah: hmmmm, each has a different 'handler' eh?&lt;br /&gt;(14:46:11) Wes McCullough: perhaps&lt;br /&gt;(14:46:19) Wes McCullough: each ensures a different type of prosperity for the server&lt;br /&gt;(14:46:30) Wes McCullough: one query would ensure that the server has many healthy children running&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-6346393327798374906?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/6346393327798374906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=6346393327798374906' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6346393327798374906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/6346393327798374906'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/11/makefile-and-indian-weddings.html' title='makefile and indian weddings'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-115572057051034703</id><published>2006-08-16T17:28:00.000+08:00</published><updated>2006-10-24T23:19:59.147+08:00</updated><title type='text'>java learnings from subu -2</title><content type='html'>&lt;b&gt;&lt;font color="#FF0000"&gt;HibernateORM &lt;/font&gt;&lt;/b&gt;&lt;br /&gt;ORM- object relationship mapping is a technology whihc manages persistence of objects by converting the object fields to db fields.&lt;br /&gt;Hibernate is a ORM implementation whihc is now part of the apache project. There are other implementations that exist and each app server hjas adopted one of their own. Oracle app serer uses inhouse developed technology.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;How to use&lt;/i&gt;: There is a main service class factory which needs to be mapped to a datasource name&lt;br /&gt;&lt;br /&gt;Passing DTO/entities across containers&lt;br /&gt;An often bad design is that the servlet objects use their own data model (fields) while beans use their own, thus requiring  transitional message objects to be created which are often called DTO's. A better option is to align the DTO's to the entities (beans) themselves and populate them from teh servlet layer.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font color="#FF0000"&gt;Transaction Control&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The concept of transaction control is simple, essentially to identify a block as an atomic transaction and if any operation fails then to roll back the whole&lt;br /&gt;&lt;br /&gt;The same can logically be achieved using multiple try catch blocks and maintaining a central global shared varible to maintain thr transaction. However there are two diadvantages compared to use of a container managerd transaction control.&lt;br /&gt;1. Multithreaded bcoz prob&lt;br /&gt;2. In case of a complete system crash there is no form of recovery&lt;br /&gt;&lt;br /&gt;On ther other hand the container manages a log of these transaction and on sys crash it ffirst rolls back the old transactions with support of the db transaction manager. Ie it essentially requests the db to rollback. &lt;br /&gt;&lt;br /&gt;How to use:&lt;br /&gt;&lt;br /&gt;Define a transaction object=t1&lt;br /&gt;&lt;br /&gt;&lt;b&gt;set t1.begin&lt;/b&gt;&lt;br /&gt;try{&lt;br /&gt;//do transactions&lt;br /&gt;&lt;b&gt;t1.commit&lt;/b&gt;&lt;br /&gt;}catch ()&lt;br /&gt;{ &lt;b&gt;t1.rollback&lt;/b&gt;}&lt;br /&gt;&lt;font color="#FF0000"&gt;&lt;br /&gt;Corba&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;Corba is like DCOM. And although a language idependent protocol, needs to be supported by languages.&lt;br /&gt;&lt;br /&gt;For any method/class to be exposed as a corba call, we have to create a stub and a skelton of it using a CORBA compiler. This essentially understand the binary format of the compiled code and creates a skeleton which can call the method appropriately. &lt;br /&gt;&lt;br /&gt;IOR: this is a an xml format descriptor for the method call, specifying the machine name, port, class name etc and all details required to identify the object and method. This is normally stored in a centralized corba registry on the server machine (which can be anywhere)&lt;br /&gt; &lt;br /&gt;IIOP:this is the base oprotocol which is like soap and is used to marshat and transport objects.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;Simple Design:&lt;/b&gt;&lt;font color="#FF0000"&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;Lets take a simple scenario:1. SImple website Ui   2. Calculation intensive insuarance policy app&lt;br /&gt;&lt;br /&gt;For both the recommended way is to use a heavier servlet layer (as control logic is more) and only a session facade for the Bean layer. For the insurance one, if transaction control is required then doing it at the bean layer may be more useful.  Note hibernate comes with its own low level transaction contorl mechanism and sometimes use of it is enough.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-115572057051034703?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/115572057051034703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=115572057051034703' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115572057051034703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115572057051034703'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/08/java-learnings-from-subu-2.html' title='java learnings from subu -2'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-115471870370560888</id><published>2006-08-05T03:11:00.000+08:00</published><updated>2006-10-24T23:19:59.091+08:00</updated><title type='text'>Java learnings and discussions with Subbu-1</title><content type='html'>&lt;b&gt;Java Bean:&lt;/b&gt;&lt;br /&gt;Nothing but a pojo ( plain old java object) with only difference in naming and use of methods. For every field to be catered to, there needs to be a set,get method. Eg setFirstName, getFirstName.&lt;br /&gt;&lt;br /&gt;What this helps out is in file level persistence. As the methods are clearly named, the Java framework can save files (in a standard format) from the objects (persistence). This thus enables uses of beans as good interface and UI objects as they can store 'properties' very well. This can be likened to the VB programming paradigm of dragging buttons into forms and filling the correct set of properties. This is possibly the reason why Java Beans are used a plug and play type situations (acting as a facade) and in similar way in UI design via drag-and-drop.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Enterprise Jave Bean&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The enterprise Java Bean essentially extens this concept to the enterprise level, taking persistence to the Database. &lt;br /&gt;&lt;br /&gt;Types of beans&lt;br /&gt;1. Session&lt;br /&gt;2. Entity&lt;br /&gt;3. MDB&lt;br /&gt;&lt;br /&gt;Session beans are used via the session facade design pattern. They provide two interfaces:Home and remote. The home is used to locate the bean ? while the remote is the actual interface exposed.The way they manage persistence is using ORM technology like Hibernate. &lt;br /&gt;&lt;br /&gt;Hibernate&lt;br /&gt;&lt;br /&gt;In this the elements of the class to be ORMized are mapped to correspinding sql table columns and defined in a mapping file. Hibernate also provides for basic transaction control, in the form of database rollback in case of non-commit. &lt;br /&gt;&lt;br /&gt;There is a standard sessionfactory class to be used to get the handle of a 'service' object. This service object can be used to load and save the parameters in a hibernate session. eg:&lt;br /&gt;&lt;br /&gt;1.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-115471870370560888?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/115471870370560888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=115471870370560888' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115471870370560888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115471870370560888'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/08/java-learnings-and-discussions-with.html' title='Java learnings and discussions with Subbu-1'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-115468320618562621</id><published>2006-08-04T17:20:00.000+08:00</published><updated>2006-10-24T23:19:59.032+08:00</updated><title type='text'>golf</title><content type='html'>Chris DiMarco&lt;br /&gt;Geoff Ogilvy&lt;br /&gt;Zach Johnson:&lt;br /&gt;John Daly:&lt;br /&gt;Tiger&lt;br /&gt;vijay singh&lt;br /&gt;jim furyk&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-115468320618562621?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/115468320618562621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=115468320618562621' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115468320618562621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115468320618562621'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/08/golf.html' title='golf'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-115423249572514779</id><published>2006-07-30T12:08:00.000+08:00</published><updated>2006-10-24T23:19:58.970+08:00</updated><title type='text'>PcWorld Reviews- Best 2005 products and IE utility plugins</title><content type='html'>http://www.pcworld.com/article/118794-3/article.html&lt;br /&gt;&lt;br /&gt;http://www.pcworld.com/article/120763-12/article.html&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-115423249572514779?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/115423249572514779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=115423249572514779' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115423249572514779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/115423249572514779'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/07/pcworld-reviews-best-2005-products-and.html' title='PcWorld Reviews- Best 2005 products and IE utility plugins'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114870472341273979</id><published>2006-05-27T12:38:00.000+08:00</published><updated>2006-10-24T23:19:58.912+08:00</updated><title type='text'>my thinkpad t42 model</title><content type='html'>type:2373&amp;nbsp;&amp;nbsp;&amp;nbsp;model:ma5&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114870472341273979?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114870472341273979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114870472341273979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114870472341273979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114870472341273979'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/05/my-thinkpad-t42-model.html' title='my thinkpad t42 model'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114838052340532764</id><published>2006-05-23T18:35:00.000+08:00</published><updated>2006-10-24T23:19:58.856+08:00</updated><title type='text'>Mainframe learnings</title><content type='html'>&lt;br /&gt;http://en.wikipedia.org/wiki/CICS&lt;br /&gt;CICS: is a transaction server supporting facilities like transaction, i/o db access, db access etc. Its fucntion can be likened to an J2EE application server...the advantage lies in speed as it works on legacy mainframes. it also support distributed transaction processing, standard rpc type stuff(eg EXEC CICS LINK command)...though through proprietary methods...&lt;br /&gt;&lt;br /&gt;EXEC CICS is an API--that has a whole suite of commands available&lt;br /&gt;&lt;br /&gt;VSAM is essentially a record based file system. As cobol data is essentially records, this can be considered as a virtual database type filesystem. (?) the internals of the filesystem are unclear &lt;a href="http://en.wikipedia.org/wiki/VSAM"&gt;http://en.wikipedia.org/wiki/VSAM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;cics for windows supports c/c++ too and has header and lib files to compile programs.Note, &lt;font size=2&gt;In CICS Transaction Server for Windows, &lt;b&gt;argc &lt;/b&gt;&lt;/font&gt;is always set to&lt;br /&gt;1, &lt;b&gt;argv[0] &lt;/b&gt;contains the transaction code, and &lt;b&gt;argv[1] &lt;/b&gt;is null.&lt;br /&gt;&lt;br /&gt;CICS resources referes to files, programs etc available on the filessytem.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It provides for 'maps' or map sets which &lt;br /&gt;&lt;br /&gt;?&lt;br /&gt;CICS transaction&lt;br /&gt;CICS program&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This brings us to the point on why mainframes are fasters...which is covered later&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-----------------Copy Paste-----------------&lt;br /&gt;Virtual Storage Access Method (VSAM) is an IBM disk file storage scheme first used in the OS/VS2 operating system and later used throughout the MVS architecture. VSAM comprises four access methods: Key Sequenced Data Set (KSDS), Relative Record Data Set (RRDS), Entry Sequenced Data Set (ESDS) and Linear Data Set (LDS). See record-oriented filesystem.&lt;br /&gt;&lt;br /&gt;VSAM records can be of fixed or variable length. They are organised in fixed-size blocks called Control Intervals (CIs), and then into larger divisions called Control Areas (CAs). Control Interval sizes are measured in bytes &amp;#8212; e.g. 4K &amp;#8212; while Control Area sizes are measured in disk tracks or cylinders.&lt;br /&gt;&lt;br /&gt;The program IDCAMS is commonly used to manipulate ("delete and define") VSAM datasets. Custom programs can access VSAM datasets through data definitions (DD's) in Job Control Language (JCL) or in online regions such as CICS (Customer Information Control Systems.)&lt;br /&gt;&lt;br /&gt;Both IMS/DB and DB2 are implemented on top of VSAM and use its underlying data structures.&lt;br /&gt;&lt;br /&gt;---------------&lt;br /&gt;&lt;br /&gt;&lt;font size=2&gt;Programs that include EXEC CICS commands are processed by the&lt;br /&gt;appropriate command-language translator, which translates these commands&lt;br /&gt;into programming language statements. You compile and link your translated&lt;br /&gt;program in the usual way. When your program is executed, the statements&lt;br /&gt;inserted by the translator invoke the API server module (FAASRSML). This&lt;br /&gt;provides the service requested by a command by invoking one or more CICS&lt;br /&gt;control programs.&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;----------------------&lt;br /&gt;&lt;br /&gt;&lt;font size=2&gt;Transfer of control between programs, using the EXEC CICS XCTL and&lt;br /&gt;EXEC CICS LINK commands. All called programs must contain an EXEC&lt;br /&gt;CICS RETURN command.&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;---------------------&lt;br /&gt;&lt;br /&gt;&lt;font size=2&gt;The ability to start CICS transactions and to call CICS programs from&lt;br /&gt;external (non-CICS) programs running either on a server or on a client&lt;br /&gt;using the following features:&lt;br /&gt; External transaction initiation (ETI)&lt;br /&gt; External presentation interface (EPI)&lt;br /&gt; External call interface (ECI)&lt;/font&gt;&lt;br /&gt;-----------------&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font size=3&gt;Storage control&lt;/font&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Each transaction is restricted to the storage it owns&lt;/b&gt;. The application fails if it&lt;br /&gt;attempts to refer to other storage. If a program uses an EXEC CICS GETMAIN&lt;br /&gt;command to allocate other storage areas, this storage is allocated as private,&lt;br /&gt;and therefore cannot be shared by other transactions.&lt;br /&gt;If you need to use shareable storage, use the EXEC CICS GETMAIN SHARED&lt;br /&gt;command.&lt;br /&gt;Temporary storage queues are held on disk, that is, in auxiliary storage, even&lt;br /&gt;if the MAIN option is specified on the EXEC CICS WRITEQ TS command.&lt;br /&gt;&lt;br /&gt;-------------------------&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114838052340532764?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114838052340532764/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114838052340532764' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114838052340532764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114838052340532764'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/05/mainframe-learnings.html' title='Mainframe learnings'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114753819110218954</id><published>2006-05-14T00:36:00.000+08:00</published><updated>2006-10-24T23:19:58.801+08:00</updated><title type='text'>canada skills</title><content type='html'>0213  	 Computer and Information Systems Managers&lt;br /&gt;2281 	Computer and Network Operators and Web Technicians&lt;br /&gt;2147 	Computer Engineers (Except Software Engineers)&lt;br /&gt;2174 	Computer Programmers and Interactive Media Developers&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114753819110218954?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114753819110218954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114753819110218954' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114753819110218954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114753819110218954'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/05/canada-skills.html' title='canada skills'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114753689493018399</id><published>2006-05-14T00:14:00.000+08:00</published><updated>2006-10-24T23:19:58.744+08:00</updated><title type='text'>AUS PR</title><content type='html'>Computing Professional - specialising in CISSP  	2231-79&lt;br /&gt;Computing Professional - specialising in E-commerce Security (non-programming) 	2231-79&lt;br /&gt;Computing Professional - specialising in Network Security 	2231-79&lt;br /&gt;Computing Professional - specialising in SAP 	2231-79&lt;br /&gt;Computing Professional - specialising in SIEBEL 	2231-79&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114753689493018399?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114753689493018399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114753689493018399' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114753689493018399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114753689493018399'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/05/aus-pr.html' title='AUS PR'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114741483178131547</id><published>2006-05-12T14:20:00.000+08:00</published><updated>2006-10-24T23:19:58.682+08:00</updated><title type='text'>Nice Advertisment</title><content type='html'>&lt;br /&gt;&lt;br /&gt;Compeling ad aint it? :) lol&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114741483178131547?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114741483178131547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114741483178131547' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114741483178131547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114741483178131547'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/05/nice-advertisment.html' title='Nice Advertisment'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114698040096808114</id><published>2006-05-07T13:38:00.000+08:00</published><updated>2006-10-24T23:19:58.626+08:00</updated><title type='text'>test123</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/635/251/640/P1000243.jpg"&gt;&lt;img style="CLEAR: all; FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/635/251/320/P1000243.jpg" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&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 class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114698040096808114?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114698040096808114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114698040096808114' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114698040096808114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114698040096808114'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/05/test123.html' title='test123'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-114066860683288426</id><published>2006-02-23T12:23:00.000+08:00</published><updated>2006-10-24T23:19:58.573+08:00</updated><title type='text'>great firefox extensions review list</title><content type='html'>http://pchere.blogspot.com/2005/12/50-best-firefox-extensions-for-power.html&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-114066860683288426?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/114066860683288426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=114066860683288426' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114066860683288426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/114066860683288426'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/02/great-firefox-extensions-review-list.html' title='great firefox extensions review list'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113881125425969421</id><published>2006-02-02T00:27:00.000+08:00</published><updated>2006-10-24T23:19:58.511+08:00</updated><title type='text'>Restoring a mozilla backed up profile folder</title><content type='html'>Move an existing profile or restore a backed up profile&lt;br /&gt;&lt;br /&gt;It's possible to move the location of a profile folder. This could be useful if you have a backed up profile folder somewhere on your hard drive and want to tell Firefox to use that as your profile. This section explains how to do this.&lt;br /&gt;&lt;br /&gt;   1. Shut down Firefox completely (File &gt; Exit).&lt;br /&gt;   2. Move the profile folder to the desired location. For example, on Windows, move the profile from C:\Documents and Settings\[username]\Application Data\Mozilla\Firefox\Profiles\xxxxxxxx.default to D:\Stuff\MyProfile. If you are reading these instructions because you want to restore a previously backed up profile, this step isn't necessary. Just note the current location of the profile you want to restore.&lt;br /&gt;   3. Open up profiles.ini in a text editor. The file is located in the application data folder for Firefox:&lt;br /&gt;          * On Windows XP/2000, the path is %AppData%\Mozilla\Firefox          * On Windows 95/98/Me, the path is usually C:\WINDOWS\Application Data\Mozilla\Firefox          * On Linux, the path is ~/.mozilla/firefox/&lt;br /&gt;          * On Mac OS X, the path is ~/Library/Application Support/Firefox/&lt;br /&gt;   4. In profiles.ini, locate the entry for the profile you've just moved. Change the Path= line to the new location.&lt;br /&gt;   5. Change IsRelative=1 to IsRelative=0.&lt;br /&gt;   6. Save profiles.ini and restart Firefox.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113881125425969421?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113881125425969421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113881125425969421' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113881125425969421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113881125425969421'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/02/restoring-mozilla-backed-up-profile.html' title='Restoring a mozilla backed up profile folder'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113869366407050550</id><published>2006-01-31T15:47:00.000+08:00</published><updated>2006-10-24T23:19:58.458+08:00</updated><title type='text'>ut 2003 cd key</title><content type='html'>FZLZX-73YBT-BAE4B-ZLNHM&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113869366407050550?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113869366407050550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113869366407050550' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113869366407050550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113869366407050550'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/01/ut-2003-cd-key.html' title='ut 2003 cd key'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113863413688407238</id><published>2006-01-30T23:15:00.000+08:00</published><updated>2006-10-24T23:19:58.406+08:00</updated><title type='text'>flickr page image picker and uploader</title><content type='html'>javascript:t='';for(var n=0;n&lt;document.images.length;n++){t+='&lt;a href=/ onclick=\'document.f.url.value=document.images['+n+'].src;document.f.submit();return false;\'&gt;&lt;img border=0 src='+document.images[n].src+'&gt;&lt;/a&gt;&lt;br&gt;'};if(t!=''){document.write('&lt;p&gt;Click an image to add it to your photostream&lt;/p&gt;&lt;form name=f action=http://www.flickr.com/tools/sendto.gne method=get&gt;&lt;input type=hidden name=url&gt;&lt;/form&gt;'+t+'');void(document.close())}else{alert('No images!')}&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113863413688407238?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113863413688407238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113863413688407238' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113863413688407238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113863413688407238'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/01/flickr-page-image-picker-and-uploader.html' title='flickr page image picker and uploader'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113725513568639742</id><published>2006-01-15T00:12:00.000+08:00</published><updated>2006-10-24T23:19:58.343+08:00</updated><title type='text'>protopage!</title><content type='html'>if u r person who normally works on multiple computers in a day...the simplest case of this being a office pc at work and a home pc/laptop at home...then this is for you: www.protopage.com&lt;br /&gt;&lt;br /&gt;this is a online quick notes maitaining system...so that u hv the same content (read notes) even if you happen to switch computer...and ofcrse! its 24 hrs available....u can even go to ur frenz home and lookup ur tasks list or the very important number...web based means access newhere netime! neat i'd say..&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113725513568639742?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113725513568639742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113725513568639742' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113725513568639742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113725513568639742'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/01/protopage.html' title='protopage!'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11705241.post-113725490454308875</id><published>2006-01-15T00:08:00.000+08:00</published><updated>2006-10-24T23:19:58.285+08:00</updated><title type='text'>useful utilz</title><content type='html'>While doing a cleanup of my NUS pc, realized that I had a lot of great progs installed which I dont use so regularly...&lt;br /&gt;&lt;br /&gt;Among them are:&lt;br /&gt;1. KissFp : a free tool which does a nice job of cleaning up the redundant stuff from FrontPage websites...reduces upload space requirments and also makes a code much more readable..&lt;br /&gt;&lt;br /&gt;2.virtual desktop manager power toy from XP...a neat tool which lets u work with 4 windows...just like linux..and best of all, this comes from Microsoft and so is resonably safe to try..&lt;br /&gt;&lt;br /&gt;3.window washer: always good to clean up ur tracks after u hv been upto mischief&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113725490454308875?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113725490454308875/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113725490454308875' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113725490454308875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113725490454308875'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/01/useful-utilz.html' title='useful utilz'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113670943912009095</id><published>2006-01-08T16:37:00.000+08:00</published><updated>2006-10-24T23:19:58.219+08:00</updated><title type='text'>neat windows shutdown tool</title><content type='html'>http://shell-and-desktop.softlandmark.com/quick_shutdown_tools/Shutdown_Timer_Info.html&lt;br /&gt;&lt;br /&gt;Unlike other shutdown tools, this one actually bypasses/closes all "End Now" windows and ensures a complete shutdown. Otherz i have seen before just trigger a shutdown but get stuck in the intermediate dialogs that MS Windows throws in an attempt to shutdown...&lt;br /&gt;&lt;br /&gt;so this one is a highly recommended for me.&lt;br /&gt;&lt;br /&gt;For those who are wondering to a potential use of it...here are a few scenarios that I recenly used it for:&lt;br /&gt;&lt;br /&gt;1. Wanted to load a cd full of photos to my flickr account...so just before I went to sleep I started the flickr uploading process, put the shutdown timer to 2 hrs and dozed off..&lt;br /&gt;&lt;br /&gt;2. One day i found myself downloading a 4gb dvd from the ineternet, and like the previous case, put it to download, started the timer for 3 hrs and slept off...&lt;br /&gt;&lt;br /&gt;so in all, its a very useful for ppl who do a lot of batch operations on the comp/laptop...&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113670943912009095?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113670943912009095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113670943912009095' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113670943912009095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113670943912009095'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2006/01/neat-windows-shutdown-tool.html' title='neat windows shutdown tool'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113267105183658663</id><published>2005-11-22T22:50:00.001+08:00</published><updated>2006-10-24T23:19:58.138+08:00</updated><title type='text'>Password Retrieval tools</title><content type='html'>Nice site! :http://www.nirsoft.net/ lots of code examples and compiled utitlies to help in retrieval of passwords from all kinds of programs from instant messengers to web browsers&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113267105183658663?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113267105183658663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113267105183658663' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113267105183658663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113267105183658663'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/11/password-retrieval-tools_22.html' title='Password Retrieval tools'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113259058620087417</id><published>2005-11-22T00:27:00.000+08:00</published><updated>2006-10-24T23:19:58.012+08:00</updated><title type='text'>Geek Books</title><content type='html'>&lt;div class="entrybody"&gt; &lt;p&gt;Picked up from: http://blogs.guardian.co.uk/technology/archives/2005/11/09/top_20_geek_novels_the_results.html  in a hope to read some of them and gain more geek knowledge&lt;br /&gt;&lt;/p&gt; &lt;p&gt;So far, 132 people have voted for &lt;em&gt;&lt;strong&gt;the best geek novels written in English since 1932&lt;/strong&gt;&lt;/em&gt;, in spite of Survey Monkey's rubric saying free polls were limited to 100 responses. The top 20 is therefore as follows, with the numbers in brackets showing the number of votes.&lt;/p&gt; &lt;p&gt;1. The HitchHiker's Guide to the Galaxy -- Douglas Adams 85% (102)&lt;br /&gt; 2. Nineteen Eighty-Four -- George Orwell    79% (92)&lt;br /&gt; 3. Brave New World -- Aldous Huxley         69% (77) &lt;br /&gt; 4. Do Androids Dream of Electric Sheep? -- Philip Dick 64% (67)&lt;br /&gt; 5. Neuromancer -- William Gibson                 59% (66)&lt;br /&gt; 6. Dune -- Frank Herbert                               53% (54)&lt;br /&gt; 7. I, Robot -- Isaac Asimov                            52% (54)&lt;br /&gt; 8. Foundation -- Isaac Asimov                      47% (47)&lt;br /&gt; 9. The Colour of Magic -- Terry Pratchett     46% (46)&lt;br /&gt;10. Microserfs -- Douglas Coupland             43% (44)&lt;br /&gt;11. Snow Crash -- Neal Stephenson            37% (37)&lt;br /&gt;12. Watchmen -- Alan Moore &amp; Dave Gibbons    38% (37)&lt;br /&gt;13. Cryptonomicon -- Neal Stephenson         36% (36)&lt;br /&gt;14. Consider Phlebas -- Iain M Banks            34% (35)&lt;br /&gt;15. Stranger in a Strange Land -- Robert Heinlein   33% (33)&lt;br /&gt;16. The Man in the High Castle -- Philip K Dick    34% (32)&lt;br /&gt;17. American Gods -- Neil Gaiman                31% (29)&lt;br /&gt;18. The Diamond Age -- Neal Stephenson     27% (27)&lt;br /&gt;19. The Illuminatus! Trilogy -- Robert Shea &amp;amp; Robert Anton Wilson       23% (21)&lt;br /&gt;20. Trouble with Lichen - John Wyndham       21% (19) &lt;/p&gt;&lt;p&gt;There are two surprises for me. First, I'm amazed Neal Stephenson didn't do better: he is probably the ultimate geek novelist, being a bit of a geek himself. Second, I'm very impressed by the support for Watchmen, the graphic novel. And while I'm not surprised The Illuminatus! Trilogy didn't do better, I think more of you should read it -- or at least the first book, &lt;a href="http://www.amazon.co.uk/exec/obidos/ASIN/0722192193/026-5830577-5117223"&gt;The Eye in the Pyramid&lt;/a&gt;!&lt;/p&gt;&lt;p&gt; The following five books attracted the most votes against. &lt;/p&gt;&lt;p&gt;Dune -- Frank Herbert                       17% (17) &lt;br /&gt;Neuromancer -- William Gibson            13% (15)&lt;br /&gt;I, Robot -- Isaac Asimov                   12% (13)&lt;br /&gt;Foundation -- Isaac Asimov               13% (13)&lt;br /&gt;The Colour of Magic -- Terry Pratchett   12% (12) &lt;/p&gt;&lt;p&gt;Finally, the saddest statistics for me were the ones for John Brunner's books, which recorded high scores in the Not read it/Don't care category, as follows. &lt;/p&gt;&lt;p&gt;Stand on Zanzibar -- John Brunner        85% (77)&lt;br /&gt;The Shockwave Rider -- John Brunner      88% (80)&lt;/p&gt;&lt;p&gt;I really enjoyed these books when I read them, though that was a long time ago. The sadness comes from the fact that Brunner was a British novellist, a good bloke, and used to drop me the occasional note (usually askng for advice about computing) in the days when I edited Computer Guardian. He died of a stroke during the World Science Fiction Convention in Glasgow in 1995.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Footnote&lt;/strong&gt;:  The short-list was drawn up based on comments to &lt;a href="http://blogs.guardian.co.uk/technology/archives/2005/10/26/what_are_the_top_20_geek_novels_updated.html"&gt;What are the top 20 geek novels&lt;/a&gt; on October 26, with voting at &lt;a href="http://www.surveymonkey.com/s.asp?u=174121476371"&gt;&lt;strong&gt;Survey Monkey&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;  &lt;/div&gt;      &lt;h2&gt;&lt;br /&gt;&lt;/h2&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113259058620087417?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113259058620087417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113259058620087417' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113259058620087417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113259058620087417'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/11/geek-books.html' title='Geek Books'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113127375736211818</id><published>2005-11-06T18:42:00.000+08:00</published><updated>2006-10-24T23:19:57.948+08:00</updated><title type='text'>FTP TOOls</title><content type='html'>http://www.snapfiles.com/download/dlftpscheduler.html&lt;br /&gt;http://www.snapfiles.com/freeware/network/fwftp.html -- all fewware...good&lt;br /&gt;winscp&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113127375736211818?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113127375736211818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113127375736211818' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113127375736211818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113127375736211818'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/11/ftp-tools.html' title='FTP TOOls'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113108746483272331</id><published>2005-11-04T14:57:00.000+08:00</published><updated>2006-10-24T23:19:57.881+08:00</updated><title type='text'>SoccerNotes:: ManU</title><content type='html'>Roby Keane blamed   Rio Ferdinand, Kieran Richardson, John O'Shea, Darren Fletcher and Alan Smith&lt;br /&gt;&lt;br /&gt;Van nister loy&lt;br /&gt;Chritiano Ronaldo&lt;br /&gt;Wayne Rooney&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113108746483272331?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113108746483272331/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113108746483272331' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113108746483272331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113108746483272331'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/11/soccernotes-manu.html' title='SoccerNotes:: ManU'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113108537137207230</id><published>2005-11-04T14:22:00.000+08:00</published><updated>2006-10-24T23:19:57.803+08:00</updated><title type='text'>Great Freeware DVD ripping</title><content type='html'>check out http://www.mrfreefree.com/free_software/dvd_rippers.html#&lt;br /&gt;my reccomendation is eazy DVD. Has a very nice step by step UI...and a powerful advanced tab...&lt;br /&gt;However I coulnd quite manage to get the video resolution to 168*128@15fps required by my new samsung mp3 player..&lt;br /&gt;one more thing I wonder is how is 168*128@15fps=200kbps? simple multiplication of 168*128*15/1024 works out to 300Kbps!..&lt;a href="ftp://protikmukherjee.com/web/SVIModule.exe" title="download the SVIModule.exe" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113108537137207230?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113108537137207230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113108537137207230' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113108537137207230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113108537137207230'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/11/great-freeware-dvd-ripping.html' title='Great Freeware DVD ripping'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-113022908182954824</id><published>2005-10-25T16:31:00.000+08:00</published><updated>2006-10-24T23:19:57.732+08:00</updated><title type='text'>addon to mgr notes</title><content type='html'>ppl are too restricted in their domains&lt;br /&gt;no1 has an overall idea of work&lt;br /&gt;every shld have that&lt;br /&gt;some morale boosting mails can also help&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-113022908182954824?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/113022908182954824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=113022908182954824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113022908182954824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/113022908182954824'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/10/addon-to-mgr-notes.html' title='addon to mgr notes'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112973924162282496</id><published>2005-10-20T00:27:00.000+08:00</published><updated>2006-10-24T23:19:57.658+08:00</updated><title type='text'>Mail2Mgr</title><content type='html'>It is not that other people dont realize it. They too crib at times, but being a part of the system they tend to accept it and live with it.&lt;br /&gt;&lt;br /&gt;My suggestions for immidiately solving the problems are these:&lt;br /&gt;I ) Infrastructure&lt;br /&gt;&gt; Help eBao team with setup of infrastructure:a high bw internet conn facilitating a VPN. &lt;br /&gt;&gt; Provide atleast 2 phone lines from SIT to eBao. Put atleast one person as SIT Helpdesk person at eBao who can route calls to appropiate persons if required. Current mode of communication is MSN messnger which is not good enough. &lt;br /&gt;&lt;br /&gt;II) eBao SIT support&lt;br /&gt;&gt; Identify two people at eBao with atleast 2 years work experience&lt;br /&gt;&gt; Train them for a couple of weeks on all subsystems, they should have a good overall idea of the current system, problems especially as regards to setup. One person with strong deployment knowledge will also be very helpful&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Too much clear cut definition on roles and boudaries&lt;br /&gt;&lt;br /&gt;&gt; Unnecesary overhead of communication among various parties&lt;br /&gt;&gt; &lt;br /&gt;&lt;br /&gt;Quick example:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112973924162282496?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112973924162282496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112973924162282496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112973924162282496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112973924162282496'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/10/mail2mgr.html' title='Mail2Mgr'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112920564643277490</id><published>2005-10-13T20:14:00.000+08:00</published><updated>2006-10-24T23:19:57.580+08:00</updated><title type='text'>Insurance Stuff</title><content type='html'>What are the Types of Life Insurance?&lt;br /&gt;&lt;h1&gt;Insurance&lt;/h1&gt;&lt;br /&gt;&lt;h2&gt;Term life&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Term life&lt;/b&gt; is the simplest and least expensive type of policy. It's pure insurance with no cash value account. A term life policy has only one function: to pay a specific lump sum to whoever you've designated, upon a specific event - - your death. The death benefit and the policy limit are the same - - a $200,000 policy pays a $200,000 death benefit. The policy protects your family by providing money they can invest to replace your salary, as well as to cover final expenses incurred by your death.&lt;br /&gt;&lt;br /&gt;Other types of life insurance provide both a death benefit and a cash value account. Their premiums are larger than term life premiums, because they fund the savings account in addition to buying insurance. These policies are often referred to as &lt;b&gt;cash value policies&lt;/b&gt;. They include:&lt;br /&gt;&lt;br /&gt;Whole Life&lt;br /&gt;Variable Life&lt;br /&gt;Universal Life&lt;br /&gt;Universal Variable Life&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Whole Life&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Whole life insurance provides permanent protection for your dependents while building a cash value account. With this type of insurance, the insurance company manages the policies various accounts.&lt;br /&gt;&lt;br /&gt;What it does:&lt;br /&gt;It pays a death benefit to the beneficiary you name and offers you a low risk cash value account and tax-deferred cash accumulation.&lt;br /&gt;&lt;br /&gt;It provides a fixed premium which can't increase during your lifetime as long as you continue to pay the planned amount.&lt;br /&gt;&lt;br /&gt;It allows the insurance company to exclusively manage the cash value account in your policy.&lt;br /&gt;&lt;br /&gt;It provides you the option to receive dividends from your policy or apply them to reduce payments.&lt;br /&gt;&lt;br /&gt;It offers you the right to withdraw from the policy during your lifetime.&lt;br /&gt;&lt;br /&gt;What it doesn't do:&lt;br /&gt;It doesn't offer the account flexibility to invest in separate accounts such as money market, stock, and bond funds.&lt;br /&gt;&lt;br /&gt;It doesn't allow you the account flexibility to split your money among different accounts or to move your money between accounts.&lt;br /&gt;&lt;br /&gt;It doesn't offer premium flexibility.&lt;br /&gt;&lt;br /&gt;It doesn't offer &lt;b&gt;face amount&lt;/b&gt; flexibility.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Variable Life Insurance&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Variable life insurance provides permanent protection for you and is the type of life insurance with account flexibility for the more risk-oriented policy holder.&lt;br /&gt;&lt;br /&gt;What it does:&lt;br /&gt;It pays a death benefit to the beneficiary you name and offers you low-risk, tax-free cash accumulation.&lt;br /&gt;&lt;br /&gt;It allows the death benefit to vary in relation to the fund returns of the cash value account.&lt;br /&gt;&lt;br /&gt;It allows you to borrow from the policy during your lifetime.&lt;br /&gt;&lt;br /&gt;What it doesn't do:&lt;br /&gt;It offers no guarantee to the amount of cash value during your lifetime.&lt;br /&gt;&lt;br /&gt;It doesn't offer you premium flexibility.&lt;br /&gt;&lt;br /&gt;It doesn't offer you face amount flexibility.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Universal Life Insurance&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Universal life insurance provides permanent protection for your dependents and is more flexible than whole or variable life.&lt;br /&gt;&lt;br /&gt;What it does:&lt;br /&gt;It pays a death benefit to the beneficiary you name and offers you a low risk cash value account and tax deferred accumulation.&lt;br /&gt;&lt;br /&gt;It allows you to earn market rates of interest on your cash value account.&lt;br /&gt;&lt;br /&gt;It offers the right to borrow or withdraw from the policy during your lifetime.&lt;br /&gt;&lt;br /&gt;It allows you premium flexibility.&lt;br /&gt;&lt;br /&gt;It offers face amount flexibility.&lt;br /&gt;&lt;br /&gt;What it doesn't do:&lt;br /&gt;It doesn't offer you the account flexibility to invest in separate accounts such as money market, stock, and bond funds.&lt;br /&gt;&lt;br /&gt;It doesn't allow you the account flexibility to split your money among different accounts or to move your money between accounts.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Universal Variable Life Insurance&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Universal Variable life is the type of insurance which gives you more control of cash value account policy features than any other insurance type.&lt;br /&gt;&lt;br /&gt;What it does:&lt;br /&gt;It pays a death benefit to the beneficiary you name and offers you low risk tax deferred cash value options.&lt;br /&gt;&lt;br /&gt;It offers separate accounts for you to invest in such as money market, stock, and bond funds.&lt;br /&gt;&lt;br /&gt;It offers premium flexibility.&lt;br /&gt;&lt;br /&gt;It allows you to make withdrawals or to borrow from the policy during your lifetime.&lt;br /&gt;&lt;br /&gt;It stipulates that if you terminate the contract in early years you will receive less cash value total return than in a whole contract.&lt;br /&gt;&lt;br /&gt;What it doesn't do:&lt;br /&gt;It requires you, the policyholder, to devote time to manage the accounts. The policies long term success is contingent on the investment you make.&lt;br /&gt;&lt;br /&gt;It doesn't work well with small premium amounts because your premium must cover your insurance and your accounts.&lt;br /&gt;&lt;br /&gt;============================================================================================================&lt;br /&gt;&lt;br /&gt;There are many types of life insurance products available to meet the differing needs of many individuals and families. It is often difficult to understand what kind of protection each policy offers. Learn more about the various types of life insurance products and to clarify the differences between these policies. In order to evaluate which life insurance policy will meet your particular needs, it is important to discuss the matter with an agent or advisor. There are numerous factors to evaluate before purchasing life insurance coverage. Some of the many things you should consider include your age, marital status, number and ages of your children, medical history, earning capability, debt ratio, and anticipated financial needs.&lt;br /&gt;&lt;br /&gt;Single Premium Life insurance requires the insured to pay a one-time premium to receive a fully paid life insurance policy. There is usually a minimum death benefit that depends on the individual insured and the amount of the lump sum payment received for the policy. Normally, the full payment goes into a cash value account and the interest rate is applied to the cash value account annually. The interest rate may fluctuate from year to year but there is usually a guaranteed minimum interest rate amount. The insurance company typically charges an annual fee, which covers mortality risks and administrative costs. This policy is usually looked at as a long-term policy since insurance companies typically charge a large amount on a Single Premium Life insurance policy if the insured takes money out during the first few years. The insured may take out a loan against this type of policy and usually the terms are favorable to the insured. Most insurance companies try to structure these policies to meet federal tax law requirements so that death benefits are free from income tax to the beneficiary.&lt;br /&gt;&lt;br /&gt;Term Life insurance provides a specific amount of life insurance coverage for a designated time period. Currently, the available policy lengths for Term Life insurance are one year, five years, ten years and fifteen years. If the insured person dies within the time frame in which the policy is in effect, the insurance company pays out the face value of the policy. If the insured person lives longer than the term of the policy, the policy expires and would pay nothing. Term Life insurance does not build any type of equity is often one of the least expensive types of insurance and is available in several forms. Term Life insurance is typically purchased as a means of temporary protection or when an individual can't afford the cost of other forms of Life insurance. Some people prefer to invest their own money elsewhere and feel they can obtain higher yields without having to use a Life insurance plan.&lt;br /&gt;&lt;br /&gt;There are Renewable and Non-Renewable Term Life policies. Both of these types are fairly simple and can be dealt with quickly. With Renewable Term Life, one automatically re-qualifies and is able to continue the existing policy when the original term is up. Non-Renewable simply means that when the policy expires the individual must take another physical and answer more health questions in order to re-qualify for a new policy.&lt;br /&gt;&lt;br /&gt;There are also Convertible and Non-Convertible Term Life policies available. With Convertible Term Life policies, the insured may switch his/her term policy into a permanent form of life insurance such as Whole Life, Universal Life or Variable Life. Non-Convertible simply means that one can't switch the policy to another form of life insurance.&lt;br /&gt;&lt;br /&gt;Level and Decreasing Term Life insurance are often more difficult to understand and determine which is appropriate for one's needs. The selection of one over the other is entirely dependent on the individual's personal financial conditions and needs. Level Term insurance provides a designated dollar amount of coverage for the entire period of the policy. For example, a five-year Level Term policy for $100,000 will pay $100,000 at any time the insured dies within the policy's effective period. With Decreasing Term, the sum of money that will be paid upon the death of the insured is reduced gradually over the policy period. Less would be paid out as the policy ages. One reason to select Decreasing Term insurance may be that one's financial needs may be decreasing during the policy period. For example, if you were to purchase a 10-year Decreasing Term policy and were anticipating having your house paid off or your children out of college, you may not feel that you need as much Life insurance in the future as you do today.&lt;br /&gt;&lt;br /&gt;Whole Life insurance provides coverage for the entire life of the person insured, regardless of how long you have the policy or how much has been collected in premium payments that keep the policy in force. Premiums may be paid throughout the insured's life or for a portion of his/her life (for example, 10 years or 20 years). Also, premiums may be paid in lump sums when the policy is taken out. The cash value portion of a Whole Life insurance policy belongs to the insured and may be taken out as policy loans or when the policy is cashed in. With Whole Life insurance, part of the premium payment goes toward the insurance portion of the policy, part of the premium payment goes toward administrative expenses and the remainder goes toward the investment or cash portion of the policy. The investment portion of the policy usually consists of stocks, bonds and/or mutual funds. Interest drawn on the investment portion of a Whole Life policy is usually tax-free until it is withdrawn.&lt;br /&gt;&lt;br /&gt;Universal Life insurance is a variation of Whole Life insurance. The difference is that with Universal Life, the term life portion of the policy is separate from the investment or cash portion of the policy. Also, with Universal Life policies, the investment portion of the policy is invested in money market funds as opposed to stocks, bonds and mutual funds. The cash value portion of the policy is an accumulation fund that investment interest is credited to and death benefits are paid from. With Universal Life insurance, the insured can vary the amount of his/her annual death benefit and annual premium payments. Insured people may also make partial surrenders of the policy and/or take policy loans against the cash value of the policy. A partial surrender is when an insured withdraws some of the funds that have accumulated in the investment or cash portion of the policy.&lt;br /&gt;&lt;br /&gt;There are two types of Universal Life insurance. Under Option A, there is a set death benefit for the insured regardless of premiums paid to keep the policy in force. Under Option B, the death benefit for insured is equal to a set amount plus the current cash value of the policy at the time of the insured's death. Option B usually pays out more than Option A following the death of an insured.&lt;br /&gt;&lt;br /&gt;Variable Life insurance is also a form of Whole Life insurance. As with Whole Life and Universal Life insurance, part of the premium payment goes toward the term life portion of the policy, part to administrative expenses and part to the investment or cash value portion of the policy. There is a major difference between the investment portion of Variable Life and that of other forms of life insurance. With Variable Life, the insured person (you) is able to choose how to invest the funds in the investment portion of the policy. The insured may select from an array of investments such as stocks, bonds and mutual funds as long as they are within the insurance companies portfolio. Usually, there are a few times during the year that the insured person may modify his/her investment selections. Variable Life insurance is generally more expensive than other forms of Life insurance. Death benefits may fluctuate up or down depending on investment performance however, there is usually a minimum level for benefits so they will not drop below a certain level. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;---------------------------&lt;br /&gt;&lt;br /&gt;http://www.pgafinancial.com/life.html&lt;br /&gt;http://coco.essortment.com/lifeinsurancep_rmee.htm&lt;br /&gt;http://www.bankrate.com/brm/news/insur/20020917b.asp&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112920564643277490?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112920564643277490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112920564643277490' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112920564643277490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112920564643277490'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/10/insurance-stuff.html' title='Insurance Stuff'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11705241.post-112887704874955618</id><published>2005-10-10T00:57:00.000+08:00</published><updated>2006-10-24T23:19:57.505+08:00</updated><title type='text'>free tools from PCWorld</title><content type='html'>http://www.pcworld.com/downloads/file_description/0,fid,6938,00.asp&lt;br /&gt;&lt;br /&gt;Restoration v2.5.14&lt;br /&gt;POWERDESK V5&lt;br /&gt;HJSPLIT&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112887704874955618?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112887704874955618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112887704874955618' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112887704874955618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112887704874955618'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/10/free-tools-from-pcworld.html' title='free tools from PCWorld'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112790007887147084</id><published>2005-09-28T17:34:00.000+08:00</published><updated>2006-10-24T23:19:57.418+08:00</updated><title type='text'>www.lintukoto.net/banner</title><content type='html'>banner making site...good one!&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112790007887147084?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112790007887147084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112790007887147084' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112790007887147084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112790007887147084'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/09/wwwlintukotonetbanner.html' title='www.lintukoto.net/banner'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112745632335791452</id><published>2005-09-23T14:18:00.000+08:00</published><updated>2006-10-24T23:19:53.644+08:00</updated><title type='text'>Password Cracking</title><content type='html'>&lt;font size=3&gt;A great tool to find those letters behind the asterix's- asterisk...download from &lt;/font&gt;&lt;font color="#0000FF" size=3&gt;&lt;u&gt;&lt;a href="http://www.download.com/Asterisk-Key/3000-2092_4-10246117.html?tag=lst-0-1"&gt;http://www.download.com/Asterisk-Key/3000-2092_4-10246117.html?tag=lst-0-1&lt;/a&gt;&lt;/u&gt;&lt;/font&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112745632335791452?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112745632335791452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112745632335791452' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112745632335791452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112745632335791452'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/09/password-cracking.html' title='Password Cracking'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112427037315439369</id><published>2005-08-17T17:19:00.000+08:00</published><updated>2006-10-24T23:19:53.582+08:00</updated><title type='text'>Young Manager 17thAug</title><content type='html'>O- Ego Management&lt;br /&gt;&lt;br /&gt;Understanding People&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Strengths/Weaknesses&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Functional/technical&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Friends/colleagues&lt;br /&gt;&lt;br /&gt;White Hair and PotBelly can help at times!&lt;br /&gt;&lt;br /&gt;Beat the drum but dont beat around the bush&lt;br /&gt;&lt;br /&gt;Long run tactic: Keep strong personal relations&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Categorize relationships/friends into categories and use a PRP tool&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;use the following metrics to categorize:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Known since&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Closeness Level&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Realm   (so that things get automatically adjusted according to environment change...so that current colleagues become ex- when u change company)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;General Matter:&lt;br /&gt;-----------------&lt;br /&gt;Self Talk- how to do self talking and make it postive. Controlling one's physche&lt;br /&gt;&lt;br /&gt;Do not carry you office tensions home&lt;br /&gt;&lt;br /&gt;manage (striked) Play Office politics&lt;br /&gt;-carry your dagger but dont show it&lt;br /&gt;&lt;br /&gt;The key is temporary--Bad, good situations&lt;br /&gt;&lt;br /&gt;growup Vs growing Old&lt;br /&gt;&lt;br /&gt;Orientations: Job, ppl, self-management, flexibility&lt;br /&gt;&lt;br /&gt;Judging situations, signature srv cust reaction- irate, confused, comfortable, insistent&lt;br /&gt;&lt;br /&gt;Saviness&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112427037315439369?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112427037315439369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112427037315439369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112427037315439369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112427037315439369'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/08/young-manager-17thaug.html' title='Young Manager 17thAug'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112416226411035796</id><published>2005-08-16T11:17:00.000+08:00</published><updated>2006-10-24T23:19:53.523+08:00</updated><title type='text'>Best video/audio editing freeware toolz</title><content type='html'>Have always been a big fan of this tool....have seen it grow evolve and prosper. Recently it has been put to sourceforge and this has helped make it better. After reading this if you happen to try it out and like it, dont forget the plugins!&lt;br /&gt;&lt;br /&gt;Some of the useful stuff I do with it are:&lt;br /&gt;&lt;br /&gt;1. Compress vidieoz from my handycam, digicam&lt;br /&gt;2. Convert video and audio formats&lt;br /&gt;3. Add audio to a video stream and viceversa&lt;br /&gt;4. Video Editing&lt;br /&gt;&lt;br /&gt;For audio editing there are many good free tools...one of them is audacity&lt;br /&gt;&lt;br /&gt;For this video editing tool...Google for VirtualDub&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112416226411035796?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112416226411035796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112416226411035796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112416226411035796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112416226411035796'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/08/best-videoaudio-editing-freeware-toolz.html' title='Best video/audio editing freeware toolz'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-112416063517382106</id><published>2005-08-16T10:50:00.000+08:00</published><updated>2006-10-24T23:19:53.462+08:00</updated><title type='text'>shutdown,restart shortcuts on winxp http://aumha.org/win5/a/shutcut.php</title><content type='html'>Shutdown &amp; Restart Shortcuts for Windows XP &amp; Windows 2000&lt;br /&gt;&lt;br /&gt;Windows 2000 (with the Resource Kit installed) and Windows XP (natively) have an actual shutdown command that can be launched from a command prompt &amp;#8212; and which, therefore, also can be launched from a shortcut. To see all available options for this command, click Start, click Run, and type:&lt;br /&gt;&lt;br /&gt;    SHUTDOWN /?&lt;br /&gt;&lt;br /&gt;You can also study the available options in the Microsoft KB 317371, &amp;#8220;How to Use the Remote Shutdown Tool to Shut Down and Restart a Computer in Windows 2000.&amp;#8221; (The article is basically suitable for Win XP also.)&lt;br /&gt;&lt;br /&gt;This command starts a 30-second countdown for a shutdown or restart, which permits you to abort it (with a shutdown -a command). It you want the command to execute, use the -t flag, which lets you set the time lapse in seconds. The examples below use a 1-second delay.&lt;br /&gt;&lt;br /&gt;    For a shortcut to RESTART Windows XP:&lt;br /&gt;    SHUTDOWN -r -t 01&lt;br /&gt;&lt;br /&gt;    For a shortcut to SHUT DOWN Windows XP:&lt;br /&gt;    SHUTDOWN -s -t 01&lt;br /&gt;&lt;br /&gt;Unfortunately &amp;#8212; especially on Windows XP &amp;#8212; this option only shuts down Windows. It does not shut down your computer, at least on most hardware. For that, on Win XP (and form most Win 2000 users also) I recommend the freeware utility Shutdown.exe (not to be confused with the Windows utility by the same name) by MS-MVP Andrej Budja. I&amp;rsquo;ve seen several shutdown utilities recommended, but this is the only one that I&amp;rsquo;ve seen actually shut down Windows XP and then powerdown the computer behind it. For more information on the tool, see here. After you place this utility in the root folder of C:, the commands for a shutdown or restart (respectively), each without a time delay, would be shutdown -u -t 0 for shutdown and shutdown -r -t 0 for restart.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-112416063517382106?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/112416063517382106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=112416063517382106' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112416063517382106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/112416063517382106'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/08/shutdownrestart-shortcuts-on-winxp.html' title='shutdown,restart shortcuts on winxp http://aumha.org/win5/a/shutcut.php'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111817224319215501</id><published>2005-06-08T03:24:00.000+08:00</published><updated>2006-10-24T23:19:53.407+08:00</updated><title type='text'>why is it safer to keep away from jyotisht's</title><content type='html'>coz its not very hard to believe selectively...&lt;br /&gt;if u want to believe the good true part...u r inclined to believe the bad too...its very tough to convince oneself that the bad is untrue although the good is true....wao...its a vicious loop...and a very bad one...&lt;br /&gt;&lt;br /&gt;if the person wld say only good...ppl wld not hear or ignore ...wld u trust a person who says only good?&lt;br /&gt;on the otherhand if the person wld say only bad...again u wldnt go to him....wld u b ready to accept that only bad can happen to u...u wont just say 'chuk it man' and get on with ur life...&lt;br /&gt;&lt;br /&gt;so the mix of good and bad comes in....and one can argue thats life...haha...&lt;br /&gt;&lt;br /&gt;the trick part here is that a person always WANTS to believe the good part......its near impossible to hear good or true about onself and still not believe it...&lt;br /&gt;&lt;br /&gt;MORAL: stay out...coz there is no half belief...its full or none.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111817224319215501?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111817224319215501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111817224319215501' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111817224319215501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111817224319215501'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/06/why-is-it-safer-to-keep-away-from.html' title='why is it safer to keep away from jyotisht&apos;s'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111814301265767853</id><published>2005-06-07T16:15:00.000+08:00</published><updated>2006-10-24T23:19:53.352+08:00</updated><title type='text'>Difference between Grid Job and Grid Service</title><content type='html'>This is often a big point of confusion among grid newbies. Was for me too..here I clear it up for you::&lt;br /&gt;&lt;br /&gt;A grid service is like a web service. Not much difference as such in concept. If you know what a web service is then you already know what a grid service is. Ill explain the use later (below)&lt;br /&gt;&lt;br /&gt;A grid job is a normal computational cluster job. NO difference at all. It is called a grid job only because it runs in a grid as opposed to a cluster. Ok now this may bring up another fundamental question. How is a grid different from a cluster?!&lt;br /&gt;&lt;br /&gt;From the grid job point of view, the only difference is that the grid job can be submitted to a grid using OGSA type services while a cluster job has to be scheduled, run etc manually or using a scheduler like SGE which manages the cluster.&lt;br /&gt;&lt;br /&gt;Ok for the uninitiated, lets go one step deeper and simplify things furthermore....&lt;br /&gt;&lt;br /&gt;[to eb continuied in part 2]&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111814301265767853?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111814301265767853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111814301265767853' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111814301265767853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111814301265767853'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/06/difference-between-grid-job-and-grid.html' title='Difference between Grid Job and Grid Service'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111805398167646290</id><published>2005-06-06T18:33:00.000+08:00</published><updated>2006-10-24T23:19:53.295+08:00</updated><title type='text'>at home..finally managed to get the PC working</title><content type='html'>I guessed it right..the network card was bad...&lt;br /&gt;got a new dlink nw card for the PC and it works....yippeee...now i can have my dedicated download station for all the worlds stuff i want...yipppeeee&lt;br /&gt;&lt;br /&gt;but i better not get carried away...hv lots of work to do too...hv to demo some stuff tommorow&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111805398167646290?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111805398167646290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111805398167646290' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111805398167646290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111805398167646290'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/06/at-homefinally-managed-to-get-pc.html' title='at home..finally managed to get the PC working'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111796118767457408</id><published>2005-06-05T16:46:00.000+08:00</published><updated>2006-10-24T23:19:53.241+08:00</updated><title type='text'>Realizations: Why is cooking time taking?</title><content type='html'>Today I finally understood why cooking was not an easy job...&lt;br /&gt;I went thru a full feldged meal...and it soon dawned that the cleaning up in a normal indian meal takes much more time than the real cooking...&lt;br /&gt;no wonder whole of singpaore eats out....a person cant really effort to invest so much time in this on a regular basis.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111796118767457408?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111796118767457408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111796118767457408' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111796118767457408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111796118767457408'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/06/realizations-why-is-cooking-time.html' title='Realizations: Why is cooking time taking?'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111787337137411559</id><published>2005-06-04T16:22:00.000+08:00</published><updated>2006-10-24T23:19:53.187+08:00</updated><title type='text'>Laptop Cleaning</title><content type='html'>Cleaning up a PC of uneeded stuff is always a pain in the ass...aint it?&lt;br /&gt;Since July04 my laptop has been filling with all the shit in the world without getting a single cleaning...so herez how I went about it...&lt;br /&gt;Getting the essential tools:&lt;br /&gt;1, Disktective...free...available from freebyte...it gives a neat pie chart of ur space utilization&lt;br /&gt;2. Add remove plus.....i got a 30 day trial...which was enuff for one cleaning&lt;br /&gt;3. Nero Burning Rom...or a dvd burning tool if u hv a dvd drive&lt;br /&gt;4. A cataloging tool like: http://www.nonags.com/nonags/diskcat.html&lt;br /&gt;5. registry cleaning tools&lt;br /&gt;6. Adware removal tools&lt;br /&gt;7. gneral cleaning utlity tools like system mechanic&lt;br /&gt;&lt;br /&gt;Phycology: Be a diff person...treat the pc as some1 elsez....be ruthless to the stuff u can download later again from the net&lt;br /&gt;&lt;br /&gt;Strategy:&lt;br /&gt;The following cleaning actions are reqd:&lt;br /&gt;1. Remove un-needed Programs&lt;br /&gt;2. Figure out the old files esp untouched ones&lt;br /&gt;3. clean registry&lt;br /&gt;4. make notes of things --esp of things u wld like to backup later...for eg: the matter created during the grad school sem!...u want to sort and keep it nice...might be of use later&lt;br /&gt;5.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111787337137411559?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111787337137411559/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111787337137411559' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111787337137411559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111787337137411559'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/06/laptop-cleaning.html' title='Laptop Cleaning'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111489645307138260</id><published>2005-05-01T05:27:00.000+08:00</published><updated>2006-10-24T23:19:53.132+08:00</updated><title type='text'>Dynamic Resource Discovery In Global MetaSchedulers</title><content type='html'>any idea what dynamic discovery means? Can a resource add itself to a grid without requiring to modify any file. Ie a subscription model wherein the resource/grid will itself register itself with the the metascheduler when it wants to share. Then it can also remove itself when needed with NO changes required in its configuration. Maybe you can put in some service level agreements that a grid can remove itself only after giving a 1 hr notification to the metascheduler, but the addition-removal shld still happen dynamically!&lt;br /&gt;&lt;br /&gt;Man u know what! this is what is I guess the WS agreement thingy....where there is negotiation of services.&lt;br /&gt;&lt;br /&gt;But one more thign...abhi strike hua while writign!! with RIPS u can do this dynamic thing automatically. When the grid/resource wants to remove itself, it sets its scripts such that they return cpu ,mem availability of zero...&lt;br /&gt;As on the script part this can be done by reading a simple global setting of say 'Expose=yes/no'...if it is yes it relays correct params else relays zeros thus in effect avoiding metascheduler to hence forth issue jobs to it.&lt;br /&gt;&lt;br /&gt;Now this brings in additonal concerns...waht happens when a resource wants to free itself BUT it has jobs running. Can the jobs be transferred?&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111489645307138260?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111489645307138260/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111489645307138260' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111489645307138260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111489645307138260'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/05/dynamic-resource-discovery-in-global.html' title='Dynamic Resource Discovery In Global MetaSchedulers'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111289142273845682</id><published>2005-04-08T00:23:00.000+08:00</published><updated>2006-10-24T23:19:53.079+08:00</updated><title type='text'>Recruitment process,methodology: India Vs Singapore</title><content type='html'>1. Jobs in singapore are very specific. U dont get to see mass recruitments like in India.&lt;br /&gt;2. Software jobs esp are very specefic. The Co knows why and for what role they need you unlike in India where big players like TCS, Infosys recruit a person on general skill level and then later decide the project.&lt;br /&gt;3. On these lines the no of interviews for  a typical IT job in singapore is 4-5 rounds (even at fresher level) while in India its max 2! I even know cases where Infy hired ppl just on the basis of marks!&lt;br /&gt;4. Cos like TCS, Infy believe in training...they believe that once a person has a basic skillset and knowledge level he/she can be trained for any project. Bcoz of the 10 times lesser salaries they have to pay (compared to India) they can afford to have extra training staff...something which small Co's don't have the luxury of.&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111289142273845682?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111289142273845682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111289142273845682' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111289142273845682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111289142273845682'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/04/recruitment-processmethodology-india.html' title='Recruitment process,methodology: India Vs Singapore'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111185476311901100</id><published>2005-03-27T00:32:00.000+08:00</published><updated>2006-10-24T23:19:53.024+08:00</updated><title type='text'>GT3 Programmers Tutorial--Part 2</title><content type='html'>Step 5: Deploy the service into a grid services&lt;br /&gt;container&lt;br /&gt;&lt;br /&gt;The GAR file, as mentioned in the previous page, contains all the files and information the web server&lt;br /&gt;needs to deploy the Grid Service. Deployment is also done with the Ant tool, which unpacks the GAR&lt;br /&gt;file and copies the files within (WSDL, compiled stubs, compiled implementation, WSDD) into key locations&lt;br /&gt;in the GT3 directory tree. ****It also reads our deployment descriptor and configures the web server to&lt;br /&gt;take our new Grid Service into account.***&lt;br /&gt;&lt;br /&gt;This deployment command must be run from the root of your GT3 installation. Furthermore, you need&lt;br /&gt;to run it with a user that has write permission in that directory.&lt;br /&gt;&lt;br /&gt;ant deploy -Dgar.name=&lt;full path of GAR file&gt;&lt;br /&gt;&lt;br /&gt;the client:&lt;br /&gt;&lt;br /&gt;package org.globus.progtutorial.clients.MathService;&lt;br /&gt;import org.globus.progtutorial.stubs.MathService.service.MathServiceGridLocator;&lt;br /&gt;import org.globus.progtutorial.stubs.MathService.MathPortType;&lt;br /&gt;import java.net.URL;&lt;br /&gt;public class Client&lt;br /&gt;{&lt;br /&gt;Writing Your First Grid Service in 5 Simple&lt;br /&gt;Steps&lt;br /&gt;49&lt;br /&gt;public static void main(String[] args)&lt;br /&gt;{&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;// Get command-line arguments&lt;br /&gt;URL GSH = new java.net.URL(args[0]);&lt;br /&gt;int a = Integer.parseInt(args[1]);&lt;br /&gt;// Get a reference to the MathService instance&lt;br /&gt;MathServiceGridLocator mathServiceLocator = new MathServiceGridLocator();&lt;br /&gt;MathPortType math = mathServiceLocator.getMathServicePort(GSH);&lt;br /&gt;// Call remote method 'add'&lt;br /&gt;math.add(a);&lt;br /&gt;System.out.println("Added " + a);&lt;br /&gt;// Get current value through remote method 'getValue'&lt;br /&gt;int value = math.getValue();&lt;br /&gt;System.out.println("Current value: " + value);&lt;br /&gt;}catch(Exception e)&lt;br /&gt;{&lt;br /&gt;System.out.println("ERROR!");&lt;br /&gt;e.printStackTrace();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;However, the important point is that,&lt;br /&gt;once we have that reference, we can work with the Grid Service as if it were a local object.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;placed. We&lt;br /&gt;need to include this directory in the Classpath so our client can access generated stub classes such as&lt;br /&gt;MathServiceGridLocator. Before running it, we need to to start up the standalone container. Otherwise,&lt;br /&gt;our Grid Service won't be available, and the client will crash. The following command must be run from&lt;br /&gt;the root of your GT3 installation:&lt;br /&gt;globus-start-container&lt;br /&gt;&lt;br /&gt;==delegation==&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;parameter name="baseClassName" value="org.globus.ogsa.impl.ogsi.GridServiceImpl"/&gt;&lt;br /&gt;Now we're using this parameter to tell the Grid Services container that GridServiceImpl will provide the&lt;br /&gt;basic functionality of our Grid Service.&lt;br /&gt;&lt;br /&gt;===Service data can be used for indexing===&lt;br /&gt;&lt;br /&gt;Finally, remember from the What is a Grid Service? page that service data generally falls into two categories:&lt;br /&gt;state information (operation results, intermediate results, runtime information, etc.) and service&lt;br /&gt;metadata (system data, supported interfaces, cost of using the service, etc.). The SystemInfo SDE&lt;br /&gt;would fall into the 'service metadata' category, while the LastResults SDE would fall into the 'state&lt;br /&gt;information' category.&lt;br /&gt;&lt;br /&gt;--So... where and how exactly do we define Service Data?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The solution is in the GWSDL. As we'll see in the next page, another of the extensions introduced by&lt;br /&gt;GWSDL (with respect to WSDL) is that we can associate SDEs to a portType, specifying the cardinality&lt;br /&gt;of each SDE along with other properties. The datatype of each SDE is specified in XML Schema&lt;br /&gt;[http://www.w3c.org/XML/Schema], a language originally intended to describe the structure and vocabulary&lt;br /&gt;of XML documents. However, it can also be used to define other types of structures (including&lt;br /&gt;databases, objects, etc.)&lt;br /&gt;&lt;br /&gt;The GridService Service Data&lt;br /&gt;Besides all the Service Data we might add by ourselves to a Grid Service (such as our MathData), all&lt;br /&gt;Grid Services have a set of common Service Data Elements which describe certain characteristics of the&lt;br /&gt;Grid Service, such as the GSH of the instance. These SDEs are part of the GridService portType&lt;br /&gt;&lt;br /&gt;gridServiceHandle. Multivalued SDE which contains the GridService's GSHs.&lt;br /&gt;&amp;bull; factoryLocator. Single valued SDE with the locator for the factory which created this Grid Service.&lt;br /&gt;If the Grid Service was not created by a factory, the value of this SDE will be null.&lt;br /&gt;&amp;bull; terminationTime. Single valued SDE with information about the termination time of the Grid Service.&lt;br /&gt;&amp;bull; serviceDataNames. Multivalued SDE with the names of all the SDEs in the Grid Service.&lt;br /&gt;&amp;bull; interfaces. Multivalued SDE with the names of all the interfaces (PortTypes) implemented by this&lt;br /&gt;Grid Service.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111185476311901100?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111185476311901100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111185476311901100' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111185476311901100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111185476311901100'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/03/gt3-programmers-tutorial-part-2.html' title='GT3 Programmers Tutorial--Part 2'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111182206582293202</id><published>2005-03-26T15:27:00.000+08:00</published><updated>2006-10-24T23:19:52.754+08:00</updated><title type='text'>GT3 programmers Tutorial--part1</title><content type='html'>Here are my notes on the Gt3 Programmers Tutorial written clasically by Borja Sotomayor&lt;br /&gt;//---------------------------------------------------------------------------------------------------------//&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&amp;bull; GT3 Quick Start&lt;br /&gt;[http://publib-b.boulder.ibm.com/Redbooks.nsf/RedpaperAbstracts/redp3697.html?Open]. Redpaper&lt;br /&gt;written by an IBM team lead by Luis Ferreira.&lt;br /&gt;&amp;bull; From Zero to GT3 [http://www-pnp.physics.ox.ac.uk/~stokes/twiki/bin/view/DIRAC/GT3Express].&lt;br /&gt;Written by Ian Stokes-Rees&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;----------&lt;br /&gt;Writing and deploying a Grid Service is easier than you might think. You just have to follow five simple&lt;br /&gt;steps.&lt;br /&gt;1. Define the service's interface. This is done with GWSDL&lt;br /&gt;2. Implement the service. This is done with Java&lt;br /&gt;3. Define the deployment parameters. This is done with WSDD&lt;br /&gt;4. Compile everything and generate GAR file. This is done with Ant&lt;br /&gt;5. Deploy service. This is also done with Ant&lt;br /&gt;--------------&lt;br /&gt;3. Define the deployment parameters. This is done with WSDD&lt;br /&gt;&lt;br /&gt;One of the key components of the deployment phase is a file called the deployment descriptor. It's the&lt;br /&gt;file that tells the web server how it should publish our Grid Service (for example, telling it what the our&lt;br /&gt;service's GSH will be). The deployment descriptor is written in WSDD format (Web Service Deployment&lt;br /&gt;Descriptor). The deployment descriptor for our Grid Service could be something like this:&lt;br /&gt;&lt;br /&gt;---------------&lt;br /&gt;4)&lt;br /&gt;&lt;br /&gt;However, creating a GAR file is a pretty complex task which involves the following:&lt;br /&gt;&amp;bull; Converting the GWSDL into WSDL&lt;br /&gt;&amp;bull; Creating the stub classes from the WSDL&lt;br /&gt;&amp;bull; Compiling the stubs classes&lt;br /&gt;&amp;bull; Compiling the service implementation&lt;br /&gt;&amp;bull; Organize all the files into a very specific directory structure&lt;br /&gt;---------------&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;./tutorial_build.sh &lt;service base directory&gt; &lt;service's GWSDL file&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111182206582293202?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111182206582293202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111182206582293202' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111182206582293202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111182206582293202'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/03/gt3-programmers-tutorial-part1.html' title='GT3 programmers Tutorial--part1'/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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-11705241.post-111181876197831517</id><published>2005-03-26T14:30:00.000+08:00</published><updated>2006-10-24T23:19:52.699+08:00</updated><title type='text'></title><content type='html'>hi ppl, tis e ma first post...this blog'o'mine will be more on the tech side...plan to post regular snippets, nooz discussions and also use it as a medium to document something I learnt....it might b of help to u...&lt;div class="blogger-post-footer"&gt;Protik-SaikowierdzScribblings&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11705241-111181876197831517?l=saikowierd.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://saikowierd.blogspot.com/feeds/111181876197831517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=11705241&amp;postID=111181876197831517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111181876197831517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11705241/posts/default/111181876197831517'/><link rel='alternate' type='text/html' href='http://saikowierd.blogspot.com/2005/03/hi-ppl-tis-e-ma-first-post.html' title=''/><author><name>Protik </name><uri>http://www.blogger.com/profile/00583571589679419501</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>
