<?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-15504546</id><updated>2011-04-22T11:14:07.741+06:30</updated><category term='GIS'/><category term='foaf'/><category term='knowledge'/><category term='openid'/><category term='Java EE'/><category term='PDF'/><category term='lePaOf'/><category term='bfsi'/><category term='parlay'/><category term='document management'/><category term='IT'/><category term='startup'/><category term='SME'/><category term='bhamini'/><category term='funding'/><category term='glassfish'/><category term='Java ME'/><category term='J2ee'/><category term='banking'/><category term='openoffice'/><category term='prolog'/><category term='outsourcing'/><category term='jain'/><category term='Netbeans'/><category term='intellectual Capital'/><category term='micro enterprise'/><category term='e-zine'/><category term='software business model'/><category term='openSSO'/><category term='Jetty'/><category term='activemagazine'/><category term='scanned check'/><category term='GPS'/><category term='single sign on'/><category term='Java Career'/><category term='friend of a friend'/><category term='mashup'/><category term='sanskrit'/><category term='VC'/><category term='STP'/><title type='text'>ERP for SME</title><subtitle type='html'>An ERP system is a real-time computational model of a firm's real world existence. An ERP is successful if it provides a SME with the operational efficiency of large enterprise, thus giving it a competitive edge.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://erp4sme.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>27</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-15504546.post-6646674766764973493</id><published>2007-07-05T18:28:00.000+06:30</published><updated>2007-07-05T18:32:02.949+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='VC'/><title type='text'>Google turns into VC</title><content type='html'>Google ventures &lt;a href="http://www.google.com/gadgetventures/"&gt;http://www.google.com/gadgetventures/&lt;/a&gt; are providing seed capital to those who wish to startup a business around &lt;a href="http://www.google.com/apis/gadgets/"&gt;Google Gadgets&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So go have a cuppa Coffee and enjoy make some gadgets and hopefully tons of money along the way :)&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-6646674766764973493?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6646674766764973493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6646674766764973493'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/07/google-turns-into-vc.html' title='Google turns into VC'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-1922011335627902511</id><published>2007-07-04T21:31:00.000+06:30</published><updated>2007-07-04T21:43:54.055+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><title type='text'>Mashup Server in Java</title><content type='html'>Now that &lt;a href="http://editor.googlemashups.com"&gt;Google &lt;/a&gt;and &lt;a href="http://pipes.yahoo.com/pipes/"&gt;Yahoo &lt;/a&gt;are head-on with their versions of &lt;a href="http://en.wikipedia.org/wiki/Mashup_%28web_application_hybrid%29"&gt;mashup &lt;/a&gt;server, what if you want to own one yourself?&lt;br /&gt;&lt;br /&gt;Well you could do it in Java. Well you could use the Sun open source lib. for mashup., check out the project &lt;a href="https://rome.dev.java.net/"&gt;Rome&lt;/a&gt;. If you are into Apache Axis2, then you could do with &lt;a href="http://wso2.org/projects/mashup"&gt;WSo2 &lt;/a&gt;mashup, which uses apache technologies.&lt;br /&gt;&lt;br /&gt;A good startup tutorial could be found &lt;a href="http://developers.sun.com/webserver/reference/techart/ajax-mashup.html"&gt;here&lt;/a&gt;, but i am not too happy with the code quality as there is a lot of scope for enhancements. Never-the-less, it will get you up to speed.&lt;br /&gt;&lt;br /&gt;Happy coding :)&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-1922011335627902511?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1922011335627902511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1922011335627902511'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/07/mashup-server-in-java.html' title='Mashup Server in Java'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-5323833537075333131</id><published>2007-07-03T19:14:00.000+06:30</published><updated>2007-07-03T19:14:56.077+06:30</updated><title type='text'>Intellectual Capital 2</title><content type='html'>Today&lt;a href="http://epaper.livemint.com/artMailDisp.aspx?article=03_07_2007_003_003&amp;typ=0&amp;amp;pub=422"&gt; Mint featured a story &lt;/a&gt;about NASCOM celebrating India's 1.6 million software programmers achieving a turnover of US$50 billion, that is 5.2% of India's GDP.&lt;br /&gt;However I believe that only Infosys could have achieved this figure, see &lt;a href="http://erp4sme.blogspot.com/2007/06/intellectual-capital.html"&gt; ERP for SME: Intellectual Capital&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Thus the average Intellectual Capital of an Indian programmer (or Intellectual per Capita) is US$ 31K.&lt;br /&gt;&lt;br /&gt;The Intellectual Capita of Apple is US$ 1million, so even if 10% of the Indian programmers have that Intellectual capita the figure will add a cool $160 billion to the GDP.&lt;br /&gt;&lt;br /&gt;But unfortunately the NASCOM only aims for US$ 60 billion by 2010.&lt;br /&gt;&lt;br /&gt;I think we need to become more ambitious as a country. Come on guys we can do it!&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-5323833537075333131?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://erp4sme.blogspot.com/2007/06/intellectual-capital.html' title='Intellectual Capital 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/5323833537075333131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/5323833537075333131'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/07/intellectual-capital-2.html' title='Intellectual Capital 2'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-3732840643156351978</id><published>2007-06-29T23:30:00.000+06:30</published><updated>2007-06-29T23:30:01.661+06:30</updated><title type='text'>Using Prolog to Find a Friend  - 2</title><content type='html'>&lt;a href="http://erp4sme.blogspot.com/2007/06/using-prolog-to-find-friend.html"&gt;Further to my pervious post : Using Prolog to Find a Friend&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have made a minor enhancement to compute the degrees of separation.&lt;br /&gt;/*  Prolog Program */&lt;br /&gt;knows(a,b).&lt;br /&gt;knows(b,c).&lt;br /&gt;knows(c,d).&lt;br /&gt;knows(d,e).&lt;br /&gt;&lt;br /&gt;exists(X) :- knows(X,_).&lt;br /&gt;exists(X) :- knows(_,X).&lt;br /&gt;&lt;br /&gt;friend(X,Y,Deg) :- exists(X), exists(Y), foaf(X,Y,Deg).&lt;br /&gt;&lt;br /&gt;foaf(X,Y, Deg) :- knows(X,Y), Deg is 1.&lt;br /&gt;foaf(X,Y, Deg) :- knows(Y,X), Deg is 1.&lt;br /&gt;foaf(X,Y, Deg) :- knows(X,Z),foaf(Z,Y, D1), Deg is D1 + 1.&lt;br /&gt;&lt;br /&gt;/* end */&lt;br /&gt;&lt;br /&gt;Run it using the goal:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;?- friend(a,e,X).&lt;/span&gt;&lt;br /&gt;Prolog Answer:&lt;br /&gt;yes.&lt;br /&gt;X / 4 &lt;br /&gt;Solution: friend(a,e,4)&lt;br /&gt;&lt;br /&gt;Next I will make a List to append the friends name in it.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-3732840643156351978?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://erp4sme.blogspot.com/2007/06/using-prolog-to-find-friend.html' title='Using Prolog to Find a Friend  - 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/3732840643156351978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/3732840643156351978'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/using-prolog-to-find-friend-2.html' title='Using Prolog to Find a Friend  - 2'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-968894706268206127</id><published>2007-06-29T13:33:00.001+06:30</published><updated>2007-06-29T13:53:31.807+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='parlay'/><category scheme='http://www.blogger.com/atom/ns#' term='Java EE'/><category scheme='http://www.blogger.com/atom/ns#' term='jain'/><title type='text'>AJAX JSF on Mobile</title><content type='html'>Long long ago, I had written an article in Computers Today about WAP. It was in &lt;a href="http://www.india-today.com/ctoday/20001116/mit.html"&gt;November 2000 issue.&lt;/a&gt;   What I had written then about server side delivery will be preferred way is still true.&lt;br /&gt; Ericsson has released an open source JSF renderer for mobiles! get the presentation &lt;a href="http://www.ericsson.com/mobilityworld/developerszonedown/downloads/open_development_tips/Mobile_JSF.pdf"&gt;here&lt;/a&gt;.&lt;br /&gt;You can also download the source from their site.&lt;br /&gt;&lt;br /&gt;The advantage of using Java EE to deliver application to mobile is that you don't have to support multiple versions for each vendor and even intra vendor's platform. And unlike Nokia's SDK, which is too fat, Ericson has a small footprint and thus does not lock the developer in.&lt;br /&gt;&lt;br /&gt;Recently Sun and Ericsson are collaborating to marry Java technologies with telecommunications. Not that Java was not present in the telecom space, it had &lt;a href="http://java.sun.com/products/jain/"&gt;JAIN&lt;/a&gt; (Java Advanced Intelligent Network) But then there was &lt;a href="www.parlay.org"&gt;Parlay &lt;/a&gt;led by Microsoft.  Now Sun and Ericson have collaborated to produce &lt;a href="http://www.ericsson.com/mobilityworld/sub/open/technologies/open_development_tips/tools/parlay_x_070516"&gt;Parlay interop with Java EE&lt;/a&gt;.  It too is open source.&lt;br /&gt;&lt;br /&gt;To avoid confusion here, I must add that I am talking two different things here. The enterprise applications connect B2C where as AIN (Advanced Intellegent Network) application are more of telecom domain applications like delivering caller tunes of your choice or call divert or voice mail service. Thus you could think it as O2C (Operator to Customer) applications. The only common thread here is the use of Java EE technology.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-968894706268206127?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/968894706268206127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/968894706268206127'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/ajax-jsf-on-mobile.html' title='AJAX JSF on Mobile'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-7318078407633831178</id><published>2007-06-28T21:02:00.000+06:30</published><updated>2007-06-28T21:21:52.593+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='SME'/><category scheme='http://www.blogger.com/atom/ns#' term='lePaOf'/><category scheme='http://www.blogger.com/atom/ns#' term='document management'/><title type='text'>Less Paper Office (Developer Release)</title><content type='html'>In my &lt;a href="http://erp4sme.blogspot.com/2007/06/appropiate-technology-for-document.html"&gt;previous blog&lt;/a&gt;, I had proposed that a micro enterprise can save time and cost by simply using a &lt;a href="http://www.hp.com/"&gt;HP&lt;/a&gt; scanner, that comes with a document scanning software to convert scanned documents into search-able &lt;a href="http://www.adobe.com/products/acrobat/adobepdf.html"&gt;PDF &lt;/a&gt;documents. Also &lt;a href="http://www.openoffice.org/"&gt;Open Office &lt;/a&gt;can convert a document into a &lt;a href="http://en.wikipedia.org/wiki/Portable_Document_Format"&gt;PDF &lt;/a&gt;file.&lt;br /&gt;&lt;br /&gt;However, Open Office cannot create PDF files with attached exotic files like XML and zip files.&lt;br /&gt;&lt;br /&gt;Thus I have created a simple, Free Open Source Java application, for creating PDF with attachments. These attachments can be annotated as well.&lt;br /&gt;&lt;br /&gt;It is of pre-alpha quality or developmental release for other developers and power users, to experiment.&lt;br /&gt;The distribution can be downloaded from:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ashishbanerjee.com/LePaOf_v01_dist_28june07.zip" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.ashishbanerjee.com&lt;wbr&gt;/LePaOf_v01_dist_28june07.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The distribution contains source as well as Java binary. Just unzip it into a directory and execute run.bat. For Linux and Solaris, just rename the run.bat to run.sh and give executable permissions.  It needs Java runtime.&lt;br /&gt;&lt;br /&gt;LePaOf uses third party  open source lib. &lt;a href="http://www.pdfbox.org/"&gt;PDF BOX&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-7318078407633831178?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/7318078407633831178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/7318078407633831178'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/less-paper-office-developer-release.html' title='Less Paper Office (Developer Release)'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-5659976687381776452</id><published>2007-06-24T22:57:00.000+06:30</published><updated>2007-06-24T23:17:06.600+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Jetty'/><category scheme='http://www.blogger.com/atom/ns#' term='glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='Java EE'/><category scheme='http://www.blogger.com/atom/ns#' term='Netbeans'/><title type='text'>Netbeans Does Not Use Grizzly Yet</title><content type='html'>Its a bit sad to figure out that &lt;a href="http://www.netbeans.org/"&gt;Netbeans.org&lt;/a&gt; does not use &lt;a href="https://grizzly.dev.java.net/"&gt;Grizzly&lt;/a&gt;!&lt;br /&gt;Now if you are wondering what all this is all about? Let me clear the bytes for you. Netbeans is the Sun's flagship IDE. Competing directly with &lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt;. Grizzly is the &lt;a href="http://java.sun.com/j2se/1.4.2/docs/guide/nio/"&gt;NIO &lt;/a&gt;framework within &lt;a href="https://glassfish.dev.java.net/"&gt;Glassfish&lt;/a&gt;. It has been proven within Sun, that Apache does not scale beyond 4 cores, whereas Glassfish with Grizzly technology scales well beyond.&lt;br /&gt;&lt;br /&gt;However I figured out that Netbeans uses the old technology circa 1999. where &lt;a href="http://httpd.apache.org/"&gt;Apache &lt;/a&gt;sat in front and connected to Tomcat or any other Java Server using &lt;a href="http://tomcat.apache.org/tomcat-5.5-doc/config/ajp.html"&gt;AJP &lt;/a&gt;(Apache Java Protocol)&lt;br /&gt;&lt;br /&gt;Don't ask me how I figured out that netbeans.org uses Apache 2.0.50 (as of 24 June 2007) as HTTP server.&lt;br /&gt;&lt;br /&gt;I would like to appeal to Netbeans admin to seriously consider using Glassfish.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://jetty.mortbay.org/"&gt;Jetty &lt;/a&gt;6 , which also uses NIO, run their web site on Jetty itself! That's what I call confidence!&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-5659976687381776452?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/5659976687381776452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/5659976687381776452'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/netbeans-does-not-use-grizzly-yet.html' title='Netbeans Does Not Use Grizzly Yet'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-1937608839776638625</id><published>2007-06-22T23:37:00.000+06:30</published><updated>2007-06-22T23:49:15.812+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bfsi'/><title type='text'>Finacial and Banking  Transaction Links</title><content type='html'>&lt;a href="http://acronyms.thefreedictionary.com/BFSI"&gt;BFSI &lt;/a&gt;(Banking, Finance, Security and Insurance) is a vast and deep domain.&lt;br /&gt;I do not wish to map it here, but focus into Financial Transactions which is the most dynamic domain and heart of todays e-commerce backbone.&lt;br /&gt;&lt;br /&gt;Just a few URLs for my younger tribers who wish to get into Banking and Financial Transaction domain:&lt;br /&gt;&lt;br /&gt;Financial Transaction/Communication standards:&lt;br /&gt;&lt;a href="http://www.ifxforum.org/home" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.ifxforum.org/home &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.twiststandards.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.twiststandards.org/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.iso20022.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.iso20022.org/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.swift.com/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.swift.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also  must study UMM at&lt;br /&gt;&lt;a href="http://ebxml.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://ebxml.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Open source:&lt;br /&gt;&lt;a href="http://jpos.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://jpos.org/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://wife.sourceforge.net/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://wife.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PKIX:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ietf.org/html.charters/pkix-charter.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; http://www.ietf.org/html&lt;wbr&gt;.charters/pkix-charter.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.oasis-open.org/committees/security/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.oasis-open.org&lt;wbr&gt;/committees/security/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Java Stack&lt;br /&gt;&lt;a href="https://open-esb.dev.java.net/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; https://open-esb.dev.java.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Feel free to ask questions to me at:&lt;br /&gt;&lt;a href="http://www.techtribe.com/triber/ashishbanerjee"&gt;http://www.techtribe.com/triber/ashishbanerjee&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-1937608839776638625?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1937608839776638625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1937608839776638625'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/finacia-and-banking-transaction-links.html' title='Finacial and Banking  Transaction Links'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-4365028603455078708</id><published>2007-06-22T20:30:00.000+06:30</published><updated>2007-06-22T21:02:22.327+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sanskrit'/><title type='text'>How to Blog in Hindi</title><content type='html'>In case you are wondering, how I type Sanskrit in my blogs, let me share with you the knowhow. Well Hindi, Marathi and Sanskrit are written in Devanagri script.&lt;br /&gt;&lt;br /&gt;Most bloggers of Indian origin are English speaking and are more comfortable with Querty than &lt;a href="http://bhashaindia.com/Developers/KnowHow/KeyboardLayout/index.aspx"&gt;Indic keyboard&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Eons ago, the Department of Information Technology had funded a project with IIT Kanpur,  called GIST. Now &lt;a href="http://pfrlib.cdacindia.com/html/gist/applic.asp"&gt;CDAC &lt;/a&gt;carries the torch. It resulted in LIPI and &lt;a href="http://acharya.iitm.ac.in/mirrors/vv/vvcrdt/software.html"&gt;ISCI&lt;/a&gt; .  It is  now dated. Only die hard &lt;a href="http://en.wikipedia.org/wiki/Don_Quixote"&gt;Don Quixotes&lt;/a&gt; of IT at government funded agencies use it. No more used in real life.&lt;br /&gt;&lt;br /&gt;In-fact we burned a few Lakhs of rupees in consulting and Indian language conversion with CDAC, and got zilch result. But what paid off is their brand name that sells in the Banking segment.&lt;br /&gt;&lt;br /&gt;But if you are not into politics of IT sales, then what's the technology you should go for?&lt;br /&gt;&lt;br /&gt;The technology is &lt;a href="http://unicode.org/"&gt;Unicode&lt;/a&gt;. Both &lt;a href="http://www.microsoft.com"&gt;Windows&lt;/a&gt;, &lt;a href="http://www.linux.org/docs/ldp/howto/Unicode-HOWTO.html"&gt;Linux&lt;/a&gt; and &lt;a href="http://developers.sun.com/dev/gadc/unicode/solaris/index.html"&gt;Solaris &lt;/a&gt;support it.&lt;br /&gt;&lt;br /&gt;Best and simplest of all you can type in English and transliterate it in Hindi! That's what Google supports, see: &lt;a href="http://googleblog.blogspot.com/2007/04/now-you-can-blog-in-hindi.html"&gt;http://googleblog.blogspot.com/2007/04/now-you-can-blog-in-hindi.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also checkout &lt;a href="http://en.wikipedia.org/wiki/ITRANS"&gt;ITRANS&lt;/a&gt;, which is the original technology on which Google is based.&lt;br /&gt;&lt;br /&gt;But what's under the hood? Good question :)&lt;br /&gt;&lt;br /&gt;Check out my test page at : &lt;a href="http://ash.banerjee.googlepages.com/dev2uni.html"&gt;http://ash.banerjee.googlepages.com/dev2uni.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The Java source code is available there. In-fact, by changing just a few lines of code, Inheritance in Java speak, I could make it work for Bengali and Punjabi! That's the beauty of Indian languages.&lt;br /&gt;&lt;br /&gt;By the way Sanskrit is the most scientific language ever spoken. And &lt;span style="font-size:-1;"&gt;&lt;b&gt;A.A.Mcdonald&lt;/b&gt;&lt;/span&gt; in his Sanskrit grammar book wrote that Sanskrit is at-least 200 years ahead of English. And &lt;a href="http://en.wikipedia.org/wiki/P%C4%81%E1%B9%87ini"&gt;&lt;span style="font-size:-1;"&gt;&lt;b&gt;Panini&lt;/b&gt; &lt;/span&gt;&lt;/a&gt;was the world's first grammarian!&lt;br /&gt;&lt;br /&gt;Now go and Blog in Hindi.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-4365028603455078708?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/4365028603455078708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/4365028603455078708'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/how-to-blog-in-hindi.html' title='How to Blog in Hindi'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-1584338609089913240</id><published>2007-06-22T13:09:00.000+06:30</published><updated>2007-06-22T13:10:30.059+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bhamini'/><category scheme='http://www.blogger.com/atom/ns#' term='knowledge'/><category scheme='http://www.blogger.com/atom/ns#' term='sanskrit'/><title type='text'>Wealth of Knowledge by Bhamini</title><content type='html'>Here is a Sanskrit shloka attibuted to Bhamini's Sabhatarangini:&lt;br /&gt;&lt;br /&gt;न चोरहार्यं न च राजहार्यं न भ्रातृभाज्यं न च भारकारि।&lt;br /&gt;व्यये कृते वर्धत एव नित्यम् विद्याधनं सर्वधनप्रधानं।।&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;It cannot be stolen by the thieves or the kings, nor can brothers divide it and it is burden less. Every time its is spent it grows. Knowledge is indeed the supreme wealth.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Sabhatarangini by Bhaamini &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-1584338609089913240?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1584338609089913240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1584338609089913240'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/wealth-of-knowledge-by-bhamini.html' title='Wealth of Knowledge by Bhamini'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-1559998478988706498</id><published>2007-06-20T20:30:00.000+06:30</published><updated>2007-06-20T20:49:28.274+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='activemagazine'/><category scheme='http://www.blogger.com/atom/ns#' term='openoffice'/><category scheme='http://www.blogger.com/atom/ns#' term='e-zine'/><title type='text'>Active Magazine is Awesome</title><content type='html'>I came across the Olive Software's &lt;a href="http://www.olivesoftware.com/products/activemagazine.asp"&gt;Active Magazine&lt;/a&gt; product, when trying to read the Red Herring magazine online.&lt;br /&gt;&lt;br /&gt;As the user experience was so good and natural; Incredibly I flicked through all of the 88 pages of the Red Herring issue!&lt;br /&gt;&lt;br /&gt;It worked in Firefox. And, it does not load any heavy duty plugins, just Java Script, though I did not care to look under its hood to figure out if it was using any Flash, the user experience was so good, that the content had grabbed my attention and my techie instinct took a back seat. &lt;br /&gt;&lt;br /&gt;What I have noticed about me is that I start looking under the hood, only when; either the site get slow, or crashes...I guess that's when my engineering sole wakes up and takes over from the Net surfer.&lt;br /&gt;&lt;br /&gt;The Active magazine is a great concept, though I guess it would be costing a bomb! Given that they don't disclose the prices upfront.&lt;br /&gt;&lt;br /&gt;If you are running a community news letter, then best is to use &lt;a href="http://www.openoffice.org/"&gt;Open Office&lt;/a&gt; which is free and open source it comes with a SDK. You can also generate PDF with a press of a button.&lt;br /&gt;&lt;br /&gt;But, if you are running a professional e-zine setup, then go for &lt;a href="http://www.olivesoftware.com/products/activemagazine.asp"&gt;Active Magazine&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-1559998478988706498?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1559998478988706498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/1559998478988706498'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/active-magazine-is-awesome.html' title='Active Magazine is Awesome'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-6652283978191884798</id><published>2007-06-19T20:40:00.000+06:30</published><updated>2007-06-19T21:37:02.532+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='GIS'/><category scheme='http://www.blogger.com/atom/ns#' term='GPS'/><title type='text'>Route Guru</title><content type='html'>I just came across &lt;a href="http://www.routeguru.com/"&gt;routeguru.com&lt;/a&gt; , promoted and founded by Avinash Agrawal. Its still in Alpha (19-June-07).  But works!!&lt;br /&gt;&lt;br /&gt;Route Guru is about planning route, presently only a few Indian cities are supported. The data is licensed from Eicher, yes the same company that manufactures tractors and had published the city guides. In fact, we had approached Eicher around Y2K (during the last dot com boom), and we could not strike a deal as they were asking a bomb for their data and wouldn't consider revenue share! Good that Avinash has been able to convince them. Though, it would be interesting to figure out the terms of the deals :)&lt;br /&gt;&lt;br /&gt;The technology is Java, though Struts has been used, which is a bit outdated. Ajax has been used as well. Though, use of &lt;span style="font-weight: bold;"&gt;Google Map API would have been a cool feature&lt;/span&gt;. The site was slightly slow when I clicked about us. But, I guess it may be due to the sever capability. probably a VPS with less than 200MB RAM must have been used. That's OK for testing the concept.&lt;br /&gt;&lt;br /&gt;The idea of Route Guru, is well timed as the 2010 games is looming...also many mobiles come with LBS (Location Based Service) and GPS.&lt;br /&gt;&lt;br /&gt;I think Route Guru should be ported to mobile, using Google Ajax mobile technology which is free and open source.&lt;br /&gt;&lt;br /&gt;Overall an excellent idea with great potiential and right timing. Good work Avinash :) and congrats to your team.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-6652283978191884798?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6652283978191884798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6652283978191884798'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/route-guru.html' title='Route Guru'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-4281956500974974728</id><published>2007-06-19T19:23:00.000+06:30</published><updated>2007-06-19T19:43:41.785+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='openid'/><category scheme='http://www.blogger.com/atom/ns#' term='openSSO'/><category scheme='http://www.blogger.com/atom/ns#' term='single sign on'/><title type='text'>Need for a Single Sign On</title><content type='html'>I just redeemed a gift voucher of Rs 1000/- at &lt;a href="http://www.indiaplaza.in/"&gt;indiaplaza.in&lt;/a&gt; , I had received it for my writings at &lt;a href="http://www.sulekha.com/"&gt;sulekha.com&lt;/a&gt; . This is a good concept of cross promotions between web sites.&lt;br /&gt;&lt;br /&gt;However, there is a scope for improvement. I had to register again at indiaplaza, which inconvenienced me, also added another password and user-id to remember! Oh No! Not another id, for God's sake.&lt;br /&gt;&lt;br /&gt;So, is there an alternative? Sure there is one. No make it two.&lt;br /&gt;&lt;br /&gt;The concept is called Single Sign On (SSO). There are many standards for SSO.  The best is &lt;a href="http://www.oasis-open.org/committees/security/"&gt;SAML&lt;/a&gt;.&lt;br /&gt;Apart from being a standard, Google also uses it. You can find the details here:&lt;br /&gt;&lt;a href="http://code.google.com/apis/apps/sso/saml_reference_implementation.html"&gt;http://code.google.com/apis/apps/sso/saml_reference_implementation.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You you are a lazy programmer like me, you would find the open source enterprise quality at OpenSSO. Get the source code from  &lt;a href="https://opensso.dev.java.net/"&gt;https://opensso.dev.java.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The other simpler alternative is &lt;a href="http://openid.net/"&gt;openid&lt;/a&gt;. Open id is a democratic alternative to Microsoft's &lt;a href="https://accountservices.passport.net/ppnetworkhome.srf?lc=1033"&gt;passport&lt;/a&gt;. Thus the user can choose where one wishes to keep their personal details.&lt;br /&gt;&lt;br /&gt;OpenSSO extensions supports openid.&lt;br /&gt;&lt;br /&gt;So guys lets have a SSO for&lt;a href="http://www.techtribe.com/"&gt; techTribe.com&lt;/a&gt; and &lt;a href="http://www.sulekha.com/"&gt;sulekha.com&lt;/a&gt;, the sites I like!&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-4281956500974974728?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/4281956500974974728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/4281956500974974728'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/need-for-single-sign-on.html' title='Need for a Single Sign On'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-6952759035050809997</id><published>2007-06-18T20:51:00.000+06:30</published><updated>2007-06-18T21:40:43.249+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java Career'/><category scheme='http://www.blogger.com/atom/ns#' term='Java ME'/><category scheme='http://www.blogger.com/atom/ns#' term='Java EE'/><title type='text'>Java ME versus Java EE as a Career Option</title><content type='html'>Jatin my mentee at techTribe, asked a question :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;"can u tell me about the scope that j2me has in the industry?"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This blog entry attempts to answer the above query.&lt;br /&gt;First J2ME has been re-branded as Java ME. So is J2EE as Java EE, and yes you guessed it J2SE is now Java SE.&lt;br /&gt;&lt;br /&gt;Now that you have fallen in love with Java, (I fell for it when it was in beta circa 1997, and now happily married to it, though I have a mistress called C# :),  after the initial infatuation stage,  you will need to evaluate the career options.&lt;br /&gt;&lt;br /&gt;First Java ME is heavily fragmented and most of the manufacturers support is as an afterthought. All these manufacturers have an alternate C++ SDK and their own custom options.&lt;br /&gt;Nokia  and Moto are two 400 pound gorillas in the mobile arena. Though these two support Java ME, they have their alternative SDK. Any real life application would have to use their SDK and be tied down to their platform. Moreover Sun has launched Java FX recently, which is targeted towards RIA (Rich Internet Application). Though Java FX is a layer over Java SE and ME, it does puts spanner in the Java ME's gears. talking about gears, it reminds me of Google..why? check out Google gears but that's another story and lets not digress.&lt;br /&gt;&lt;br /&gt;Java ME has serious competition from RIA see Google API and apps for mobiles. Also Microsoft have been slowly and steadily been chipping away at the mobile OS market.&lt;br /&gt;&lt;br /&gt;So Java ME is in its way out to join the Applet club (Going to Caribbean into the Dead Man's Chest, with apologies to the Pirates trilogy)&lt;br /&gt;&lt;br /&gt;Lets understand why Java ME is going under. First, Google is leading a gang of RIA developers, the advantage of delivering an XHTML application with AJAX, is that most mobiles have a good Internet connectivity. Also distribution and lifecycle management is much easier. RIA apps can also remain offline and sync when network catches up, this is done by leveraging the  cache technology.&lt;br /&gt;&lt;br /&gt;The Microsoft's mobile OS initiative is more serious, since they have more at stake than Sun in this space.&lt;br /&gt;&lt;br /&gt;That's because after &lt;a href="http://blogs.sun.com/jonathan/"&gt;Jonathan Schwartz&lt;/a&gt; took over, he buried the hatchet with Microsoft. So, no more mindless Gate's bashing. Also he re-focused Sun's strategy and Sun is now making ALL its software open source!  So how does Sun makes money? Good question and answering it will answer your query as well.&lt;br /&gt;&lt;br /&gt;Sun makes its money by selling high end servers, and that is not the dual core types but more like 128 cores :) Check out &lt;a href="http://www.sun.com/emrkt/blackbox/index.jsp"&gt;Sun Blackbox&lt;/a&gt; as an example. Sun is also very good at making apps runs faster on their Solaris and extreme hardware platforms. For example, I have a patent (owned by Sun), to make Java faster than 'C'.  So Sun really does not make money on simple hand-held devices, but by selling high end servers.&lt;br /&gt;&lt;br /&gt;Given that Java EE has a mobile extension for RIA (Ajax, xHTML) its more of interest to Sun if applications are delivered from servers than embedded inside mobile devices.&lt;br /&gt;&lt;br /&gt;Thus if you are wanting to go for Java, go for Java EE not ME. Sun is more focused on EE.&lt;br /&gt;&lt;br /&gt;Now when I read the Nokia's tag line "This has what computers have become", Sun's Blackbox comes to my mind and not Nokia's N series.&lt;br /&gt;&lt;br /&gt;I hope I have answered your query.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-6952759035050809997?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6952759035050809997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6952759035050809997'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/java-me-versus-java-ee-as-career-option.html' title='Java ME versus Java EE as a Career Option'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-4332528818472840258</id><published>2007-06-17T23:44:00.000+06:30</published><updated>2007-06-18T00:39:57.825+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='software business model'/><category scheme='http://www.blogger.com/atom/ns#' term='intellectual Capital'/><title type='text'>Intellectual Capital</title><content type='html'>I have been concerned lately about the unsustainable business model followed by most Indian software companies; excuse my language, but I call the model Software Coolies model. [1]&lt;br /&gt;&lt;br /&gt;There are two major issues with the coolies model, first the growth is unsustainable, see the blog [2]. Second, other low cost destinations are emerging. The hourly rates are under pressure, the Indian software talents are demanding more salaries and the rupees is appreciating.&lt;br /&gt;&lt;br /&gt;So, we have two options, one to keep running the rat race of labor rate arbitrage, by moving to class B and C cities, opening development centers in Eastern Europe and Jakarta and so on. Train more people to increase the manpower supply and other such mundane no brainers.&lt;br /&gt;But that's a losers' game, at worst when played with your customers or at best, a win-loose kind of a game, that you play with your employees.&lt;br /&gt;&lt;br /&gt;So what the win-win strategy? The idea is to increase the Intellectual Capital [3].&lt;br /&gt;&lt;br /&gt;However, unlike Thomas Stewart, I would like to define Intellectual Capital more narrowly.&lt;br /&gt;&lt;br /&gt; Intellectual capital is about real money. I shall in my later posts muse more about the details of my Intellectual Capital framework. But for the purpose of this blog posting I shall define it in through a simple metrics. Since, what good is an elaborate theory, which can't be put to practice?&lt;br /&gt;&lt;br /&gt;In a nutshell, its the leverage that knowledge provides to your employees.&lt;br /&gt;&lt;br /&gt;The Intellectual Capital for an IT company can be  measured by simply diving the turnover by the number of employees.&lt;br /&gt;&lt;br /&gt;To repeat myself, I see a generally unsustainable trend in the explosive growth of the Indian Software Industry in general. Most of the revenue comes from T&amp;M (Time and Material) model.&lt;br /&gt;&lt;br /&gt;For example if one studies the balance sheet of the India's most successful and admired company, InfoSys, the 40% growth comes from 40% increase in manpower. Thus there is NO real terms of growth when seen from Revenue per Employee. Now look at the Revenue per employee of Uncle Gates' company or even Larry Ellison's company. If you multiply this figure with the number of InfoSys employees, the subtract this figure with the current InfoSys turnover, you will arrive at the potential for growth of InfoSys' &lt;script&gt;&lt;!-- D(["mb","\u003cspan style\u003d\"font-weight:bold\"\&gt;Intellectual Capital\u003c/span\&gt; !\u003cbr\&gt;\u003cbr\&gt;Same logic applied for Headstrong. But how to actually achieve this growth potential?\u003cbr\&gt;\u003cbr\&gt;The solution I propose is productizing the service. It comes in two flavors (or business models if you please). \n\u003cbr\&gt;\u003cbr\&gt;The first one is the IBM model. whereby, IBM takes over the end-to-end delivery responsibility and takes a percentage of top-line revenue or a fixed cost based on a performance metrics. For example it charges Galileo GDS US$ 2 Billion for a guarantee of maintaining a sustained performance capability of 20,000 transactions per second. It takes 6% of Airtel&amp;#39;s topline revenue for maintaining its IT infrastructure, including billing system.\n\u003cbr\&gt;This model is not confined to big ticket companies. I knew a small company that was being paid five years ago, US$100,000 per month, for maintaining a computational platform capable of calculating Black Shoal&amp;#39;s Option pricing for  NYSE selected derivatives to under 10 seconds. The startup had two programmers in India, and 1 person in US. Now the metrics have come down to sub-millisecond performance, and I am sure so has the price!\n\u003cbr\&gt;\u003cbr\&gt;The second model is the Open Source model. Here a company or a group of people, develops an Open source product that is widely used and gets revenue in terms for providing alternate license, consulting (for example Redhat charges $150 /hour for JBOSS consulting, Alfresco charges  in excess of $100,000 / pa for certified stack and scalability  guarantee for its open source product. \n\u003cbr\&gt;\u003cbr\&gt;Headstrong being a financial domain focused company can acquire expertise in one of the many financial domain open source software like \u003ca href\u003d\"http://jpos.org\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;jpos.org\u003c/a\&gt; (ISO8583), IFX.org, \u003ca href\u003d\"http://twist.org\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;\ntwist.org\u003c/a\&gt;, \u003ca href\u003d\"http://mifos.org\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;",1] );  //--&gt;&lt;/script&gt;&lt;span style="font-weight: bold;"&gt;Intellectual Capital&lt;/span&gt; !&lt;br /&gt;&lt;br /&gt;So if we look at Apple, it has 18,200 employees and $1 million revenue per employee! that is, its Intellectual Capital is $1 Million.[4]&lt;br /&gt;&lt;br /&gt;Compare this with InfoSys. It had 52,700 employees and $2.1 Billion in turnover, for the  year 06-07 as per [2].   That is $2.1B/52.7K = 39,848 $/emp. Thus the Intellectual Capital is just $39K!&lt;br /&gt;&lt;br /&gt;Now if InfoSys had the Intellectual Capital of Apple, then it would have had a turnover of $52.7 Billions! &lt;br /&gt;&lt;br /&gt;If it paid back just 10% of its Intellectual Capital to its employee, then an average salary of an InfoSys employee would be $100K or  nearly INR 40 lakhs per annum!!! &lt;br /&gt;&lt;br /&gt;But how to achieve that fabulous figure?&lt;br /&gt;&lt;br /&gt;The solution I propose is&lt;span style="font-weight: bold;"&gt; productizing the service&lt;/span&gt;. It comes in two flavors (or business models if you please). &lt;br /&gt;&lt;br /&gt;The first one is the IBM model. whereby, IBM takes over the end-to-end delivery responsibility and takes a percentage of top-line revenue or a fixed cost based on a performance metrics. For example it charges Galileo GDS US$ 2 Billion for a guarantee of maintaining a sustained performance capability of 20,000 transactions per second (this was circa 1998). It takes 5 to 6% of Airtel's topline revenue for maintaining its IT infrastructure, including billing system.&lt;br /&gt;This model is not confined to big ticket companies.&lt;br /&gt;&lt;br /&gt;I knew a small company that was being paid by a Wall street banker, five years ago, US$100,000 per month, for maintaining a computational platform capable of calculating Black Shoal's Option pricing for NYSE selected derivatives to under 10 seconds. The startup had two programmers in India, and 1 person in US. Now the metrics have come down to sub-millisecond performance, and I am sure so has the price!&lt;br /&gt;&lt;br /&gt;The second model is the Open Source model. Here a company or a group of people, develops an Open source product that is widely used and gets revenue in terms for providing alternate license, consulting (for example Redhat charges $150 /hour for JBOSS consulting, Alfresco charges  in excess of $50,000 / pa for certified stack and scalability guarantee for its open source product.&lt;br /&gt;&lt;br /&gt;You may say that's not an easy thing to achieve in practice! True, but then, is anything is easy in real life?&lt;br /&gt;&lt;br /&gt;As Richard Branson says : "Screw it, &lt;span style="font-weight: bold;"&gt;let's do it&lt;/span&gt;" [5]&lt;br /&gt;&lt;br /&gt;References:&lt;br /&gt;[1] My previous post:&lt;br /&gt;&lt;br /&gt;[2] Infosys employees strength : http://india.seekingalpha.com/article/37850&lt;br /&gt;&lt;br /&gt;[3] Intellectual Capital, Thomas A Stewart ISBN: 0-385-48381-3&lt;br /&gt;&lt;br /&gt;[4] Outsourcing... ET (Economic Times) Pg 22, Friday 15 June 2007.&lt;br /&gt;&lt;br /&gt;[5] Srew It, Just do it. Lessons in Life, Sir Richard Branson. ISBN: 0-7535-1099-5&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-4332528818472840258?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/4332528818472840258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/4332528818472840258'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/intellectual-capital.html' title='Intellectual Capital'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-8050138751030093643</id><published>2007-06-14T22:10:00.000+06:30</published><updated>2007-06-14T23:02:45.383+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='foaf'/><category scheme='http://www.blogger.com/atom/ns#' term='prolog'/><category scheme='http://www.blogger.com/atom/ns#' term='friend of a friend'/><title type='text'>Using Prolog to Find a Friend</title><content type='html'>I was just experimenting with the&lt;a href="http://xmlns.com/foaf/spec/"&gt; foaf&lt;/a&gt; (Friend of a Friend).  So, if we have an RDF database &lt;a href="http://jena.sf.net/"&gt;Jena&lt;/a&gt;, and can store the aggregated &lt;a href="http://xmlns.com/foaf/spec/#term_knows"&gt;foaf:knows&lt;/a&gt;  harvested from Google.   A Prolog engine can be then embedded inside the Query Engine.  A knows() predicate can be build-in, that retrieves the foaf:knows values for a given person.&lt;br /&gt;&lt;br /&gt;The following sample program can be used to determine if two persons directly or indirectly know each other.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;/* predicate will be build-in that retrieves foaf:knows from the RDF repository */&lt;br /&gt;knows(a,b).&lt;br /&gt;knows(b,c).&lt;br /&gt;knows(c,d).&lt;br /&gt;knows(x,e).&lt;br /&gt;&lt;br /&gt;/* Actual theory */&lt;br /&gt;exists(X) :- knows(X,_).&lt;br /&gt;exists(X) :- knows(_,X).&lt;br /&gt;&lt;br /&gt;foaf(X,Y) :- knows(X,Y).&lt;br /&gt;foaf(X,Y) :- knows(Y,X).&lt;br /&gt;foaf(X,Y) :- knows(X,Z), foaf(Z,Y).&lt;br /&gt;&lt;br /&gt;friend(X,Y) :- exists(X), exists(Y), foaf(X,Y).&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;The above program can be tested within any Prolog system, with the goal :&lt;br /&gt;?- friend(a,d).&lt;br /&gt;&lt;br /&gt;The above program is the bare bone proof-of-concept. It can be further improved by adding degrees of separation and common linkages of friends separation the two persons.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-8050138751030093643?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/8050138751030093643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/8050138751030093643'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/using-prolog-to-find-friend.html' title='Using Prolog to Find a Friend'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-6564104879617168927</id><published>2007-06-07T08:37:00.000+06:30</published><updated>2007-06-07T09:11:11.981+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='outsourcing'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><title type='text'>India Eclipsed, Need To Get Our Shine Back</title><content type='html'>India IT is loosing its shine due to rising costs, I just read the news items in HT2 Business &amp; world (Hindustan Times, 07June07, page 21) that TCS is planning to hire 5000 software professionals in Mexico; mainly to save cost.&lt;br /&gt;&lt;br /&gt;Recently, as an acting CTO for a startup, I too decided to get a software module outsourced from eastern Europe. Believe me, we got good quality, fast turnaround at less than one fifth (Yes that's 1/5th)   the lowest Indian quote!&lt;br /&gt;&lt;br /&gt;Salaries in India has been sky rocketing, and rising rupees does not help as well. Not that I am against high salaries. People work hard and they have all the rights to get paid the highest possible sustainable salaries.&lt;br /&gt;&lt;br /&gt;The problem lies with our Indian software leaders. We do not get out of our colonial coolies mindsets.  Indians in 18th and 19th centuries we taken to South Africa and West Indies, by the Angrez to work on farm. Unlike their African counterpart in 15th and 16th centuries, who were enslaved against their will; the Indians willingly went along for some fast money.  Recently too  illiterate workers from Kerela go to Emirates as coolies.&lt;br /&gt;&lt;br /&gt;The same model was followed by our great software leaders in 21th century, albeit in IT space. Indian intellect did shine the world. But we still had the old business model. We just remained glorified cyber coolies.&lt;br /&gt;&lt;br /&gt;The software mughals of today, have earned the glory and the booty as labor suppliers , just like the slave traders did in 15th centuries. Only that they were whites trading black, and we are brown sahibs exploiting the fellow browns.&lt;br /&gt;&lt;br /&gt;Analyze any balance sheet of the darlings of BSE (Bombay Stock Exchange). The 40% growth in revenues are backed by 40% increase in manpower! So, no real business model efficiencies in real term of revenue per employee.&lt;br /&gt;&lt;br /&gt;Microsoft and other software product and productized services companies have much more revenue per employee. Their leverage is their IP (Intellectual Property).&lt;br /&gt;&lt;br /&gt;Yes I agree! Doing product, or productizing services not easy. We are not here for a easy game either.&lt;br /&gt;&lt;br /&gt;The software coolies mindset need to be changed, if we are to sustain the competitive edge and keep paying more and more salaries.&lt;br /&gt;&lt;br /&gt;The leaders need to re-incarnate themselves into Intellectual property developers. Then and only then we can survive the next wave.&lt;br /&gt;&lt;br /&gt;We have gained much experience working for the US, UK and EU. Now leverage that to create products and services. Also, we need to have our presence in the emerging markets to leverage the cheaper labor there; Or else, others will beat us at it.&lt;br /&gt;&lt;br /&gt;hey guys! wake up! If you are a CXO then think about it and talk to your board of directors or investors.&lt;br /&gt;&lt;br /&gt;If you are an employee, use email and blog power to convince your management to graduate to productizers. Or better still, MOVE YOUR OWN CHEESE. Chuck your cushy job, and start a company. If you don't move our own cheese, some one else will move it.&lt;br /&gt;&lt;br /&gt;If you havn't notices till now, Our Iceberg is Melting (with apologies to John Kotter,)&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-6564104879617168927?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6564104879617168927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/6564104879617168927'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/india-eclipsed-need-to-get-our-shine.html' title='India Eclipsed, Need To Get Our Shine Back'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-8733773609906147827</id><published>2007-06-05T01:28:00.000+06:30</published><updated>2007-06-05T01:47:35.097+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='scanned check'/><category scheme='http://www.blogger.com/atom/ns#' term='banking'/><category scheme='http://www.blogger.com/atom/ns#' term='STP'/><title type='text'>Scan and deposit checks from Home @ Net</title><content type='html'>&lt;a href="https://www.depositnow.com/depositnow/default"&gt;&lt;br /&gt;https://www.depositnow.com/depositnow/default&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I came across the above URL through google ad. Being professionally interested in Banking systems, I looked at it. What they claim is that  under Check-21 Act, &lt;a href="http://www.federalreserve.gov/paymentsystems/truncation/"&gt;http://www.federalreserve.gov/paymentsystems/truncation/&lt;/a&gt; all one needs is a scanner and an Internet connection to deposit your check sitting right at home, I am talking about USA (just in case you did not notice the Check-21 Act URL :)&lt;br /&gt;&lt;br /&gt;Back home in India, &lt;a href="http://www.rbi.org.in/"&gt;RBI&lt;/a&gt; has selected NCR for supplying the check truncation system. See:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ncr.com/solutions/payment_and_imaging_solutions/check_truncation/cheque_truncation_system.jsp"&gt;http://www.ncr.com/solutions/payment_and_imaging_solutions/check_truncation/cheque_truncation_system.jsp&lt;/a&gt;&lt;br /&gt;And&lt;br /&gt;&lt;a href="http://www.ncr.com/documents/RBI_Check%20Truncation.pdf"&gt;http://www.ncr.com/documents/RBI_Check%20Truncation.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can read more about RBI initiatives at :&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a href="http://www.rbi.org.in/scripts/AnnualReportPublications.aspx?Id=433"&gt;http://www.rbi.org.in/scripts/AnnualReportPublications.aspx?Id=433&lt;/a&gt;&lt;br /&gt;It talks about check truncation, smart cards and RTGS.&lt;br /&gt;&lt;br /&gt;Though as of now you can't scan a check at home and deposit it online, but most banks like &lt;a href="http://www.icicibank.com/"&gt;ICICI Bank &lt;/a&gt; have introduced kiosks at branches that scan the checks and issue you an image receipts. Also you could use Internet banking and write an e-check and use RTGS (Real Time Gross Settlement) to transfer money between diffrent banks.&lt;br /&gt;&lt;br /&gt;Having said that, the NCR system that they have implemented is quite old and not open in true sense of the word.&lt;br /&gt;I think I will cover these issue in another post :)&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-8733773609906147827?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/8733773609906147827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/8733773609906147827'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/httpswww.html' title='Scan and deposit checks from Home @ Net'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-3607158707110857027</id><published>2007-06-04T00:29:00.000+06:30</published><updated>2007-06-04T00:31:35.824+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='startup'/><category scheme='http://www.blogger.com/atom/ns#' term='funding'/><category scheme='http://www.blogger.com/atom/ns#' term='VC'/><title type='text'>Guy Kawasaki's Recording on Startup</title><content type='html'>Just found Guy Kawasaki's recording on tips for getting VC funding:&lt;br /&gt;&lt;a href="http://www.guykawasaki.com/files/mp3/raising.mp3"&gt;http://www.guykawasaki.com/files/mp3/raising.mp3&lt;/a&gt;&lt;br /&gt;You MUST listen to it now.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-3607158707110857027?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/3607158707110857027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/3607158707110857027'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/guy-kawasakis-recording-on-startup.html' title='Guy Kawasaki&apos;s Recording on Startup'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-7270818386075133195</id><published>2007-06-02T23:52:00.000+06:30</published><updated>2007-06-03T00:09:57.628+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='micro enterprise'/><category scheme='http://www.blogger.com/atom/ns#' term='document management'/><title type='text'>Appropiate Technology for Document Management for Micro Enterprise</title><content type='html'>Today Vikas, my techie friend, called me up to discuss he dad's need to manage a few thousands of documents that have accumulated over a period of 10 years or more. All these documents are important and most are legal in nature that needs to be crossed referred.&lt;br /&gt;&lt;br /&gt;Vikas being a techie, like me, fell into the technology trap. We get carried away by the cutting edge technologies, without caring for the problem at hand. Once we get into the cutting edge, we bleed our resources dry :)&lt;br /&gt;&lt;br /&gt;So, he saw my logic, when I told him that I had tried and failed to implement such state-of-the-art document management software for small enterprises. even these small enterprise, who may have a part time computer maintainer; is not equipped to maintain a sophisticated (read complex) document management system. Best is to use an appropriate technology.&lt;br /&gt;&lt;br /&gt;Go for an HP scanner (Don't go for all-in-one types, just a  simple scanner). Use its document scanning software, that has image to text capability. Use it to convert the scanned documents into PDF formatted files. These file are search-able using free PDF reader from Adobe.&lt;br /&gt;Store them in a hiarchical directory structure, if you need to annotate use &lt;a href="http://OpenOffice.org"&gt;OpenOffice.org &lt;/a&gt;&lt;br /&gt;software (its free and open source) to create a master document that links other pdf documents, and save it also as a PDF.&lt;br /&gt;&lt;br /&gt;Archive these files in a DVD. Anytime you wish to search, just open the adobe pdf reader and search the scanned documents stored inside the DVD as pdf file.&lt;br /&gt;Thus you don't need a system admin to maintain the archive. But if your need grows with the growth of your organization, then use &lt;a href="http://www.alfresco.com/"&gt;Alfresco&lt;/a&gt; , also an open source Java based document management system. Its best of the breeds. I think I will take this up in another post.&lt;br /&gt;&lt;br /&gt;(c) &lt;a href="http://www.Ashish.Banerjee.name"&gt;www.Ashish.Banerjee.name&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-7270818386075133195?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/7270818386075133195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/7270818386075133195'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/appropiate-technology-for-document.html' title='Appropiate Technology for Document Management for Micro Enterprise'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-397023576957678384</id><published>2007-06-02T22:58:00.000+06:30</published><updated>2007-06-02T23:02:12.336+06:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='J2ee'/><category scheme='http://www.blogger.com/atom/ns#' term='Java EE'/><title type='text'>Dynamic Configuration Management For Clustered Java EE</title><content type='html'>I have posted a tech. brief at &lt;a href="http://www.ashishbanerjee.com/dyna-config-25may07.pdf"&gt;http://www.ashishbanerjee.com/dyna-config-25may07.pdf&lt;/a&gt;&lt;br /&gt;This technical brief,  first describes the dynamic application specific configuration, then describes an use-case scenario.  Thereafter, design constrains and solution architecture is described. Two&lt;br /&gt;implementations are proposed.&lt;br /&gt;&lt;br /&gt;Also a programmer's guideline is provided for using the dynamically configurable application parameters.&lt;br /&gt;&lt;br /&gt;It is concluded that a JNDI wrapped LDAP store is the best solution, followed by Entity Beans and&lt;br /&gt;finally by Java Spaces.&lt;br /&gt;&lt;br /&gt;However, all the three implementations are transparent to the application programmer, who uses JNDI abstraction to access the parameters.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-397023576957678384?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/397023576957678384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/397023576957678384'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2007/06/dynamic-configuration-management-for.html' title='Dynamic Configuration Management For Clustered Java EE'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-114698261465559230</id><published>2006-05-07T12:41:00.000+06:30</published><updated>2006-11-14T20:33:37.396+06:30</updated><title type='text'>Beware of Credit Card Companies in India</title><content type='html'>&lt;p style="margin-bottom: 0in;"&gt;Credit Cards are not only unsafe in hands of strangers but also in the hands of its owner. The banks aggressively push it through their DSA (Direct Sales Agents). The DSA chase the customers without telling them about the fine prints. &lt;/p&gt;  &lt;p style="margin-bottom: 0in;"&gt;I can quote two examples from my personal experiences. &lt;a href="http://www.abnamro.co.in/"&gt;ABNAMRO&lt;/a&gt; contacted me through their DSA and said that I am being gifted a lifetime Gold card by virtue of my having a fixed deposit (FD) with them. The FD was of 7% and their new advertised rates were 8%. The trap was that they were asking me to sign a legal document declaring that I will not redeem the FD for the lifetime!&lt;/p&gt;   &lt;p style="margin-bottom: 0in;"&gt;Similarly &lt;a href="http://www.hdfcbank.com"&gt;HDF&lt;/a&gt;C bank approached me through their DSA claiming that I am being “gifted” a lifetime free card. On my repeated explicit queries about any hidden gotchas, they did not tell me that there was a one time fee of RS 2000! When I read the form I was signing and asked about the fee, the executive said that I can ignore it. When I requested for a written document confirming a waiver of the one time fee, the execute beat a hasty retreat.&lt;/p&gt;   &lt;p style="margin-bottom: 0in;"&gt;Then I had an &lt;a href="https://www.americanexpress.com/cards"&gt;American Express card&lt;/a&gt;, which I found useless because, those days there were hardly any establishments accepting it in India (most still don't accept it even today!). Their statements came delayed as they came from Australia! So, I canceled it and at the time of cancellation there were no overdue or due balance. After accepting cancellation an executive called and requested me to withdraw the cancellation. I answered to her in negative and also sent a FAX to the effect. However, after 3 to 4 years I received a letter saying that I owed them renewal fee. This fee was applied after I had canceled the Card! After many pestering calls, I decided to pay the ransom for peace as fighting a case would have cost me much more. I paid under protest and am yet to receive a receipt! Fortunately I paid by Cheque, although they were insisting on cash! &lt;/p&gt;   &lt;p style="margin-bottom: 0in;"&gt;The Card companies provide a useful service, but they should stop fleecing and conning their customers. Also, they should introduce PKI based digital signature or Smart Card based transaction to reduce and eliminate frauds. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-114698261465559230?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/114698261465559230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/114698261465559230'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2006/05/beware-of-credit-card-companies-in.html' title='Beware of Credit Card Companies in India'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-113021303829812740</id><published>2005-10-25T10:16:00.000+06:30</published><updated>2006-11-14T20:33:37.316+06:30</updated><title type='text'>JSP Database Access Best Practices Links</title><content type='html'>Here are some of the JSP Database access best practices urls: &lt;a href="http://java.sun.com/developer/technicalArticles/javaserverpages/servlets_jsp/"&gt;http://java.sun.com/developer/technicalArticles/javaserverpages/servlets_jsp/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="https://bpcatalog.dev.java.net/nonav/solutions.html"&gt;https://bpcatalog.dev.java.net/nonav/solutions.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://java.sun.com/reference/blueprints/"&gt;http://java.sun.com/reference/blueprints/&lt;/a&gt; &lt;a href="https://blueprints.dev.java.net/"&gt;https://blueprints.dev.java.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Download the Blueprints book from: &lt;a href="https://blueprints.dev.java.net/books.html"&gt;https://blueprints.dev.java.net/books.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;There are two ways of accessing database from a JSP page. One using a Java Bean Object, which could be using EJB or POJO (Plain Old Java Object), however EJB and POJO have converged in &lt;a href="http://java.sun.com/products/ejb/docs.html"&gt;EJB 3.0&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;For pages embedding SQL database access code, its strongly recommended to use JSTL (JSP Standard Template Lib.), which is specified in &lt;a href="http://www.jcp.org/aboutJava/communityprocess/final/jsr052/"&gt;JSR 052&lt;/a&gt; and here is an &lt;a href="http://www.oracle.com/technology/sample_code/tech/java/codesnippet/jsps/JstlSql.jsp.html"&gt;coding example from Oracle&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The Database tables needs to be converted to Java objects in many models, there are a few frameworks available for doing it. Notably EJB 3.0 has an excellent architecture. One should also consider &lt;a href="http://db.apache.org/ojb/"&gt;Apache Object Relation Bridge&lt;/a&gt; , &lt;a href="http://java.sun.com/products/jdo/"&gt;JDO (Java Database Access)&lt;/a&gt; and &lt;a href="http://www.hibernate.org/"&gt;Hibernate&lt;/a&gt; (which is EJB 3 compatiable)&lt;br /&gt;&lt;br /&gt;One could use &lt;a href="http://druid.sourceforge.net/"&gt;Druid&lt;/a&gt;, an open source tool for database porting it also have a Java Object generator using Hybernate. A better, free but not open source software exists called &lt;a href="http://www.c24.biz/c24io_open.htm"&gt;C24 IO&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;For new development one must seriously consider JSF (Java Server Faces) which is the next logical step from &lt;a href="http://struts.apache.org/"&gt;Struts&lt;/a&gt;. Its specified by &lt;a href="http://jcp.org/en/jsr/detail?id=127"&gt;JSR-127&lt;/a&gt;. One must not use adhoc models for navigating between pages.&lt;br /&gt;&lt;br /&gt;I strongly recommend to follow the &lt;a href="http://java.sun.com/developer/technicalArticles/javaserverpages/code_convention/"&gt;coding style specified by Sun&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-113021303829812740?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/113021303829812740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/113021303829812740'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2005/10/jsp-database-access-best-practices.html' title='JSP Database Access Best Practices Links'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-112499200656070884</id><published>2005-08-25T23:56:00.000+06:30</published><updated>2006-11-14T20:33:37.231+06:30</updated><title type='text'>Delving into Compiere</title><content type='html'>In lookout for an Open Source Java ERP, I landed up with &lt;a href="http://www.compiere.org/"&gt;Compiere&lt;/a&gt;. We installed and tried to run it. Then I thought buying the user manual will make life easier, it did to a certain extent. Encouraged, I started to look under its hood. I was in for the shock of my life!&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;Let me start with the good things first. It has a comprehensive Swing based GUI. It even boasts of its own look and feel called Compiere looks! Another interesting thing is its JDO type of data model, which is generated by a Java tool in their dbport module. They have a Web based interface, which is still in beta state (as of 2.52e), it misbehaves a bit.&lt;p/&gt;&lt;br /&gt;&lt;br /&gt;The downside is that the JDO type model also heavily depend on stored procedure written in PL/SQL and Oracle 10g is the only fully supported database. So much for its Open Source credentials! Though to be fair, I could see some efforts to make it run on other databases as well.&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;Having said that, they have JBOSS sitting tight inside it. But the disappointing aspect is the way they have used EJB. They pass around objects to the Session Beans which are SQL aware, the client side is also fully SQL aware. This is one of the glaring ANTI DESIGN PATTERN.&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;I think all Java J2EE programmers must study Compiere J2EE design as to learn how not to program in EJB.&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;I encourage all Java programmers to have a look at&lt;p/&gt; &lt;code&gt;[installed dir]/compiere-all/serverRoot/src/main/ejb/org/compiere/session/ServerBean.java &lt;/code&gt;&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;You can download Compiere from &lt;a href="http://sourceforge.net/projects/compiere/"&gt;http://sourceforge.net/projects/compiere/&lt;/a&gt;&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;Best of luck, please don't die laughing!&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-112499200656070884?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112499200656070884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112499200656070884'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2005/08/delving-into-compiere.html' title='Delving into Compiere'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-112487016037045006</id><published>2005-08-24T14:24:00.000+06:30</published><updated>2006-11-14T20:33:37.142+06:30</updated><title type='text'>Apache XML verses Sun Java XML</title><content type='html'>&lt;p&gt;Apache XML technologies, &lt;a href="http://xml.apache.org/"&gt;xml.apache.org&lt;/a&gt;, are implemented in Java, (though many API also support C++ and Perl). &lt;a href="http://java.sun.com/xml/jaxp/dist/1.1/docs/tutorial/overview/3_apis.html"&gt;Sun Java XML  API&lt;/a&gt;,  also have a catchment of XML technologies. What are the differences and similarities in their approaches? Which is better?&lt;/p&gt;Basically, both XML Apache and Sun Java agree upon and acknowledge the XML standards like XSD, XPATH, SOAP, WSDL to name a few. Also they agree upon the core XML API like SAX and DOM. Sun proclaims that there are three ways to parse XML SAX, DOM and Streams. XML over streams are implicitly acknowledged by XML Apache. There have also been cross contributions between Sun Java and XML Apache. The Java XML core API, reference implementation provided by Sun in JDK 1.5 is that of Apache Xerces. Also Apache Axis figured in Sun's Java Web Services Toolkit.&lt;br /&gt;&lt;p&gt;Some of the API and packages do conflict, like that of &lt;a href="http://xmlbeans.apache.org/"&gt;ApacheXML Beans&lt;/a&gt;  with &lt;a href="http://java.sun.com/xml/jaxb/"&gt;JAXB&lt;/a&gt;. Apache claims that it fully implements &lt;a href="http://www.w3.org/XML/Schema"&gt;XSD &lt;/a&gt;, at the same time, it criticizes JAXB for not fully supporting XSD (XML Schema). Sun Java acknowledges in its documentation that JAXB partially supports XSD.&lt;/p&gt;&lt;p&gt;The reason for this partial XSD support in Sun Java; provides an insight into the differences in their respective design philosophies.&lt;/p&gt; &lt;p&gt;For Sun Java objects are the prime focus whereas Apache views XML as prime.&lt;br /&gt;&lt;/p&gt; &lt;p&gt;In Sun's philosophy you think in Java, and use XML for persisting Java Objects for storage and inter process communications.&lt;br /&gt;&lt;/p&gt; &lt;p&gt;Whereas, Apache's philosophy is to think in XML and use Java as an underlying implementation components. Thus lies the basic reason for the differences in their approaches.&lt;/p&gt; &lt;p&gt;I will not judge as to which of the two approaches are better, since I use both depending on which model fits the problem at hand the best. Languages are structural models for channeling the though process. Some languages have edge over the others in a given problem domain for providing a range of solutions.&lt;/p&gt;&lt;p&gt;Use either of the model that suits you and you feel at ease with, while modeling  a solution to a given problem.&lt;/p&gt;&lt;p&gt;Ashish Banerjee (&lt;a href="http://www.ashish.banerjee.name/"&gt;www.Ashish.Banerjee.name&lt;/a&gt;)&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-112487016037045006?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112487016037045006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112487016037045006'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2005/08/apache-xml-verses-sun-java-xml.html' title='Apache XML verses Sun Java XML'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-112486195209602202</id><published>2005-08-24T12:07:00.000+06:30</published><updated>2007-06-02T20:31:25.918+06:30</updated><title type='text'>Sun Tzu : The Art of Cyber Warfare</title><content type='html'>&lt;p style="margin-bottom: 0in;"&gt;&lt;i&gt;&lt;span style="font-size:85%;"&gt;By Ashish Banerjee, &lt;/span&gt;&lt;/i&gt;&lt;a href="http://www.ashish.banerjee.name/"&gt;&lt;i&gt;&lt;span style="font-size:85%;"&gt;www.Ashish.Banerjee.name&lt;/span&gt;&lt;/i&gt;&lt;/a&gt;&lt;i&gt;&lt;span style="font-size:85%;"&gt;, 12 May 2005.&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;We needed a framework for thinking and designing security for mission critical geographically distributed banking application over a wide area network. &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Our goal was to provide the financial transactions, databases and computing infrastructure with highest possible security.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;What does security mean in terms of information domain?&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Information security must address Authenticity and Confidentiality. Authenticity involves data integrity and non repudiation. Data Integrity means that we are assured that the information is not tampered with and data packets have not been re-transmitted (or replayed) with malicious intent. Non repudiation means that the author of the record is not able to deny its originality, it mainly involves public key based digital signature. Confidentiality involves the assurance that no one is able to snoop on the communication and only authorized persons within the organization can access the information. &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;We found that the warfare paradigm suited us the best.  &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Sun Tzu, an ancient Chinese general in 6&lt;sup&gt;th&lt;/sup&gt; century BC, wrote the Art of Warfare over 2000 years ago and yet its principles are still used in modern warfare as well as in management thinking. Sun Tzu 's central doctrine is: &lt;i&gt;To win without fighting is the best&lt;/i&gt;. We have adopted this doctrine for our security framework.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;By thinking about security as a transformation of warfare into cyberspace, enables us to get the best of the two prevalent security models namely: the asset centric security and the perimeter centric security.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;In the asset centric model, the assets like servers and databases are protected while in the perimeter based model, the focus is on protecting the corporate boundary. But in our framework, we model the Information Infrastructure Security as a manifest of warfare in virtual reality. Thus we are able to cover both the assets as well as the boundary.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;Understanding the warfare terrain is the highest responsibility of the general, and it is imperative to examine them: Sun Tzu.&lt;/i&gt;  &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;In our security framework we first define three concepts:&lt;/p&gt;  &lt;ul&gt; &lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Terrain&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Domain&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Territory&lt;/p&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;The warfare Terrain encompasses all the network space from where the attack can be launched on our domain. Domain encompasses our territory as well as all the networking pathways, not owned by us, through which our data flows. The Territory encompasses all our computing assets, databases and networking infrastructures owned by us. The aim is to keep or domain secured and protect our territory. &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Thus Terrain in a superset of Domain, which is a superset of Territory.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Imagine that you are a baron owning two castles and you need to transport foodstuff from one of your castles to another. You do not own the road connecting the two, as it passes through a friendly neighboring fiefdom. The roads passes through a valley surrounded by high mountains, not owned your neighbor nor yourself. In this analogy the two castles are your Territory. The road and the castles your Domain. And, the Terrain would constitute the high mountains, the valley, the road and the castles. &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;You may ask, why is castles included in the warfare terrain? Well, to protect ourselves from the enemy within. A study found that nearly 70% of the attacks are launched by insiders having intimate knowledge of the system's internal security.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;Making armies able to take on opponents without being defeated is a matter of unorthodox and orthodox methods: Sun Tzu.&lt;/i&gt;&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;This brings us to face the enemy. Enemy is any entity who intends to attack our territory. In order to plan our defenses, we need to profile our potential enemies and chart out their motives.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A non exhaustive list of enemy profiles and their motives are:&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A disgruntled current or ex employee, whose motive may be to harm the company.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A greedy employee out to make a quick money.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A hacker wanting to hold your data hostage for extracting a ransom.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A teenager out to prove herself a wise crack.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A customer wanting to gain an unfair advantage by fudging your accounts.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;A competitor wanting an access to your trade secrets or your customer databases.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;You can add more to this list. Also there are situations where the above profiled may collaborate to achieve their ends.    &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;Invincibility is a matter of defense, vulnerability is a matter of attack: Sun Tzu.&lt;/i&gt;&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Having profiled our potential attackers, lets see what are the types of attacks they can launch:&lt;/p&gt;  &lt;ul&gt; &lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Denial of  Service attack: the network or a server is rendered unusable by  flooding it by spurious traffic.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Trojans: A  program has trap doors built in to compromise the system, but  sending information out or letting people in.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Facade: A dummy resource erected to fool the legal users to give out secret information. For example, a dummy ATM machine was setup by attackers to collect the credit card PIN numbers! &lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Spy wares: These are malicious program, usually get in through emails or rouge web sites, monitor your desktop for password typing and send back this information. &lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Man in the middle: In this type of attack, the communication is intercepted and modified for malicious reasons, by getting into and becoming a part of the communication channel.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Phishing: a  type of social engineering attack, where official looking emails are  send to harvest passwords and access codes.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;IP Masquerading: A machine or a router is reprogrammed within the network of an service provider to redirect traffic to another computer.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;DNS spoofing: The DNS server, which resolve the IP address for a domain name, is hijacked to resolve a trusted site name to a malicious computer. &lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Hack in:  software venerability or a weak password is exploited by the  attacker to break into the system.    &lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Snooping: The attacker access the communication, many a times, the security authorities have hooks into the public IT infrastructures; this authority can be misused by an agent.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Authority misuse: An authorized internal person, misuses his access to manipulate the system to their advantage. A programmer had once programed to drop the rounded off change to his bank accounts! &lt;/p&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Again the above list is not exhaustive and newer methods are always being invented.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;It is hard to know as the dark; its movement is like pealing thunder: Sun Tzu.&lt;/i&gt;&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;We not come to the point of planning our defenses. There are three situations in defense:&lt;/p&gt;  &lt;ul&gt; &lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Preemptive : This is the best situation to be in, we have not been attacked and yet be are prepared for it. Erecting a firewall and venerability testing are the two most common plans for this situation.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Under Attack: Here we have been attacked and need to respond to the situation. Fighting a DOS (Denial of Service) attack is one of the most challenging example.&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;&lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Postmortem : This situation arises after our security have been compromised. This is the worst situation of the three to face. We need to trace the intruder, sanitize the resources to remove any Trojans or spy wares also we need to inform and co-operate with legal agencies and collect the log files as evidence to trace and book the offender. An offender who goes Scott-free is likely to attack again.&lt;/p&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;Armies must know there are adaptations of the five kind of fire attacks, and adhere to them scientifically: Sun Tzu&lt;/i&gt;   &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;In the warfare paradigm software tools, algorithm and programs become the weapons. Weapons, are technology tools and can be both used for defense as well as attacks.&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;There are many such tools available and since this is a general white paper, we shall come out with a detailed paper on specific tools applicable within our security framework. However many security sites like &lt;a href="http://www.insecure.org/"&gt;www.insecure.org&lt;/a&gt; and linux.org  list many security tools in use.      &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;One who is good at martial arts overcome other's forces without battle: Sun Tzu.&lt;/i&gt;       &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;One of the strategies is to shrink the terrain. The optimum being domain being equal to the terrain. This can be achieved in multiple ways. One of them being, taking a VPN (Virtual Private Network) from a single vendor, having MPLS and IPSec protocols running over IPv6. &lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;The maximum security you can get is to shrink the domain into your territory. That is you own all the networking as well as computing infrastructure. This scheme is however, not practical for most of the real life financial domain applications. For example, most of the financial transactions including ATM traffic in USA is routed over Internet!&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;&lt;i&gt;So it is said that victory can be made: Sun Tzu.&lt;/i&gt;&lt;/p&gt;  &lt;p style="margin-top: 0.04in; margin-bottom: 0in;"&gt;Reference: The Art of War by Sun Tzu, translated by Thomas Cleary. ISBN 1-56957-100-7, Published by &lt;a href="http://www.shambhala.com/"&gt;www.Shambhala.com&lt;/a&gt;   &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-112486195209602202?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112486195209602202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112486195209602202'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2005/08/sun-tzu-art-of-cyber-warfare.html' title='Sun Tzu : The Art of Cyber Warfare'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-15504546.post-112426374881695386</id><published>2005-08-17T13:49:00.000+06:30</published><updated>2006-11-14T20:33:36.681+06:30</updated><title type='text'>Open Source ERP for Small Enterprises</title><content type='html'>We needed an Open Source ERP solution for small enterprises. &lt;br /&gt;&lt;br /&gt;As I am personally inclined towards Java and XML (I love Dot Net architecture too! I &lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/1861004397/102-8470608-8849717?v=glance"&gt;co-authored a C# Web Services Book with Wrox.com&lt;/a&gt;); So I googled with the keywords "Open Source Java ERP", and up comes compiere everytime. Tiny ERP (&lt;a href="http://www.tinyERP.org"&gt;www.tinyERP.org&lt;/a&gt;) also popped up and so did some wierd site have 5th Gen affiliations (I thought 5G was dead with Japanese AI initiative in mid and late 80's)!&lt;br /&gt;&lt;br /&gt;I thus have zeroed on to &lt;a href="http://www.compiere.org"&gt;compiere.org&lt;/a&gt; and &lt;a href="http://www.tinyERP.org"&gt;www.tinyERP.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;TinyERP site tempted me by their FAQ, which says that it takes a few minutes to install their ERP! Though indeed it took me less than a minute to download, they forgot to mention in the FAQ that it also needs Python runtime and &lt;a href="http://www.postgresql.org"&gt;postgreSQL&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;TinyErp is implemented in &lt;a href="http://www.python.org"&gt;Python &lt;/a&gt;. Hope the snake loves Java! There is indeed a Java implementation available for &lt;a href="http://www.python.org"&gt;Python &lt;/a&gt;called &lt;a href="http://www.jython.org/"&gt;Jython&lt;/a&gt;. Netbeans, my favourite IDE, also seems to support Python &lt;a href="https://coyote.dev.java.net/"&gt;coyote.dev.java.net&lt;/a&gt;! &lt;br /&gt;&lt;br /&gt;Though TinyERP is less than a meg, PostgreSQL 8.03 is about 17 MB and Python runtime is about 10 MB. &lt;br /&gt;&lt;br /&gt;Having said that, its been more than an hour since my temptation to try tinyERP and I am yet to see it running. I have since then downloaded and installed Python and PostgreSQL. The server setup script now wants psycopg (PostgreSQL module),libxml2 (libxml2 python bindings), libxslt (libxslt python bindings).&lt;br /&gt;&lt;br /&gt;I feel like being crushed by a python! But, having gone this far, might as well download and install these as well. For all the tinyERP dependencies &lt;a href="http://tinyerp.org/docs/index.php/ServerInstallWindows.html"&gt;click here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After some two hours and addtional 8 to 10 MB downloads later,(thanks to broadband, downloads take no time), I was finally able to run the TinyERP client and server setup without any ugly Error messages.&lt;br /&gt;&lt;br /&gt;But, I am yet to see any screens! &lt;br /&gt;&lt;br /&gt;After a few false starts, I was finally been able to run the TinyERP server. It uses &lt;a href="http://www.xmlrpc.com/spec"&gt;XML-RPC&lt;/a&gt; and serves at port 8069 by default. XML-RPC, hmmm..., its a good idea! &lt;br /&gt; &lt;br /&gt;&lt;br /&gt;But I am yet to see any screens! so let me try and start the client. Yes! I could do it! The screens are pretty neat. Now in next few days I shall be exploring its features.&lt;br /&gt;&lt;br /&gt;Earlier on, I had ignored &lt;a href="http://www.gnuenterprise.org/"&gt;GNU Enterprise GNUe&lt;/a&gt;, probably because it was not written in Java, but now that I have installed Python and have to certain extent overcome my ophidiophobia. I am in a good mind to try GNUe as well.&lt;br /&gt; &lt;br /&gt;On the other hand, Compiere (Release 2.5.2e) runtime is about 27 MB and the source is about 33 MB.&lt;br /&gt;Though they claim to be DB independent they have listed Oracle 10g as their requirement! The site however claims to be database independent in design, it also says : &lt;span style="font-style:italic;"&gt;"At this point, only Oracle is fully supported. The installation on Sybase is Beta and currently requires good knowledge of Sybase and Compiere. Other databases will follow."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In contrast to TinyERP, installing Compiere was relatively smoother. This may be because we are native to Java. The biggest hurdle in Compiere installation is Oracle 10g installation. This beast needs 1GB of RAM, but we had a 512MB physical memory, so we increased the swap area and then increased the virtual memory to 4GB. If the virtual memory is less than a GB, Oracle gives out a warning and installs. But thereafter it haunts you with all sorts of problems. My colleagues at &lt;a href="http://www.infostellar.com/"&gt;SIPL &lt;/a&gt;, Amit Goel and Shalendra Joshi installed Compiere and Oracle 10g. It took about 2 days to tame the dragon called 10g. Thereafter, following the instruction, Amit had a text book installation that took about an hour. Now we are off to explore its functionality.&lt;br /&gt;&lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;Ashish Banerjee (www.Ashish.Banerjee.name)&lt;div class="blogger-post-footer"&gt;(c) www.AshishBanerjee.com&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15504546-112426374881695386?l=erp4sme.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112426374881695386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15504546/posts/default/112426374881695386'/><link rel='alternate' type='text/html' href='http://erp4sme.blogspot.com/2005/08/open-source-erp-for-small-enterprises.html' title='Open Source ERP for Small Enterprises'/><author><name>Ashish Banerjee</name><uri>http://www.blogger.com/profile/17696428733460624155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/img/34/6134/320/ab-2k3.jpg'/></author></entry></feed>
