<?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-8771024</id><updated>2011-10-29T11:43:02.523+05:30</updated><category term='ananda'/><category term='women'/><category term='Technical'/><category term='Struts2'/><category term='mysql'/><category term='cloud computing'/><category term='movies'/><category term='feminism'/><category term='Hibernate'/><category term='AJAX'/><category term='freelancing'/><category term='flat'/><category term='Technical Java'/><category term='customer review'/><category term='Apache Etch'/><category term='Java'/><category term='apartment'/><category term='RMI'/><category term='hadoop'/><category term='properties'/><category term='construction'/><category term='Tomcat'/><category term='IIT'/><category term='housing'/><category term='consulting'/><category term='sports'/><category term='gdata'/><category term='Dell'/><category term='Berkeley DB'/><category term='Eldeco'/><category term='JSF'/><category term='career'/><category term='laptop'/><category term='JAQL'/><category term='tennis'/><title type='text'>The road less travelled</title><subtitle type='html'>Two roads diverged in a wood, and I -
I took the one less travelled by,
And that has made all the difference 
                                    -Robert Frost</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>81</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8771024.post-3318790726985114204</id><published>2010-02-08T10:38:00.010+05:30</published><updated>2010-02-08T11:01:56.713+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='RMI'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache Etch'/><title type='text'>Passing custom objects with Apache Etch.</title><content type='html'>While using Apache Etch as the wire protocol of a distributed project, we had a requirement to send our custom Java objects across. This post demonstrates sending custom types and invoking different server methods without changing the idl.&lt;br /&gt;&lt;br /&gt;Apache Etch has the concept of an extern, which can be used to define specific types. The IDL needs the definition of the type, and the class with which to serialize/deserialize it. This serializer helps Etch transfer the object across the network. Let us define our pojo - com.etchTrials.Base&lt;br /&gt;&lt;br /&gt;&lt;code&gt;package com.etchTrials;&lt;br /&gt;&lt;br /&gt;import java.io.Serializable;&lt;br /&gt;import java.util.Map;&lt;br /&gt;&lt;br /&gt;public class Base implements Serializable{&lt;br /&gt;&lt;br /&gt;        private String name;&lt;br /&gt;        private int age = 5;&lt;br /&gt;&lt;br /&gt;        public Base(String values) {&lt;br /&gt;                this.name = values;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public Base() {&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        public String getName() {&lt;br /&gt;                return name;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public void setName(String name) {&lt;br /&gt;                this.name = name;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public int getAge() {&lt;br /&gt;                return age;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public void setAge(int age) {&lt;br /&gt;                this.age = age;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public String methodA() {&lt;br /&gt;                System.out.println("Inside method A");&lt;br /&gt;                return "A";&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public String toString() {&lt;br /&gt;                return "Value is " + name + " and int is " + age;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Next we define the BaseSerializer. This implements Etch's ImportExportHelper to define how Base can be marchalled/unmarshalled.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;package com.etchTrials;&lt;br /&gt;&lt;br /&gt;import java.io.ByteArrayInputStream;&lt;br /&gt;import java.io.ByteArrayOutputStream;&lt;br /&gt;import java.io.ObjectInputStream;&lt;br /&gt;import java.io.ObjectOutputStream;&lt;br /&gt;&lt;br /&gt;import etch.bindings.java.msg.Field;&lt;br /&gt;import etch.bindings.java.msg.ImportExportHelper;&lt;br /&gt;import etch.bindings.java.msg.StructValue;&lt;br /&gt;import etch.bindings.java.msg.Type;&lt;br /&gt;import etch.bindings.java.msg.ValueFactory;&lt;br /&gt;import etch.bindings.java.support.Class2TypeMap;&lt;br /&gt;import etch.bindings.java.support.Validator_byte;&lt;br /&gt;import etch.bindings.java.support.Validator_object;&lt;br /&gt;import etch.bindings.java.util.StrStrHashMap;&lt;br /&gt;import etch.bindings.java.util.StrStrHashMapSerializer;&lt;br /&gt;&lt;br /&gt;public class BaseSerializer implements ImportExportHelper {&lt;br /&gt;&lt;br /&gt;        private final Type type;&lt;br /&gt;        private final Field field;&lt;br /&gt;&lt;br /&gt;        public final static String FIELD_NAME = "base";&lt;br /&gt;&lt;br /&gt;        public BaseSerializer(Type type, Field field) {&lt;br /&gt;                this.type = type;&lt;br /&gt;                this.field = field;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /**&lt;br /&gt;         * Defines custom fields in the value factory so that the importer can find&lt;br /&gt;         * them.&lt;br /&gt;         * &lt;br /&gt;         * @param type&lt;br /&gt;         * @param class2type&lt;br /&gt;         */&lt;br /&gt;        public static void init(Type type, Class2TypeMap class2type) {&lt;br /&gt;                Field field = type.getField(FIELD_NAME);&lt;br /&gt;                class2type.put(Base.class, type);&lt;br /&gt;                type.setComponentType(Base.class);&lt;br /&gt;                type.setImportExportHelper(new BaseSerializer(type, field));&lt;br /&gt;                type.putValidator(field, Validator_byte.get(1));&lt;br /&gt;                type.lock();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        @Override&lt;br /&gt;        public Object importValue(StructValue struct) {&lt;br /&gt;                Base base = new Base();&lt;br /&gt;                try {&lt;br /&gt;                        byte[] bytes = (byte[]) struct.get(field);&lt;br /&gt;ByteArrayInputStream stream = new ByteArrayInputStream(bytes);&lt;br /&gt;                        ObjectInputStream ois = new ObjectInputStream(stream);&lt;br /&gt;                        base = (Base) ois.readObject();&lt;br /&gt;                        ois.close();&lt;br /&gt;                }&lt;br /&gt;                catch(Exception e) {&lt;br /&gt;                        e.printStackTrace();&lt;br /&gt;                }&lt;br /&gt;                return base;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        @Override&lt;br /&gt;        public StructValue exportValue(ValueFactory vf, Object arg1) {&lt;br /&gt;                StructValue struct = new StructValue(type, vf);&lt;br /&gt;                Base base = (Base) arg1;&lt;br /&gt;                try {&lt;br /&gt;                        ByteArrayOutputStream stream = new ByteArrayOutputStream();&lt;br /&gt;                        ObjectOutputStream oos = new ObjectOutputStream(stream);&lt;br /&gt;                        oos.writeObject(base);&lt;br /&gt;                        oos.close();&lt;br /&gt;                        byte[] bytes = stream.toByteArray();&lt;br /&gt;                        struct.put(field, bytes);&lt;br /&gt;                }&lt;br /&gt;                catch(Exception e) {&lt;br /&gt;                        e.printStackTrace();&lt;br /&gt;                }&lt;br /&gt;                return struct;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;We define these two in the IDL:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;module com.etchTrials&lt;br /&gt;&lt;br /&gt;service Generic {&lt;br /&gt;    exception BaseException(string msg);&lt;br /&gt;&lt;br /&gt;    @Extern( java, "com.etchTrials.Base", "",&lt;br /&gt;                "com.etchTrials.BaseSerializer", "" )&lt;br /&gt;            extern Base;&lt;br /&gt;&lt;br /&gt;    object invokeServerMethod(string method, object[] params);&lt;br /&gt;&lt;br /&gt;    void connect( string host, int port );&lt;br /&gt;&lt;br /&gt;    void listen();&lt;br /&gt;&lt;br /&gt;    @Direction(Both)&lt;br /&gt;    void close();&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The above idl has:&lt;br /&gt;1. Definition of our custom type - Base as an extern. It tells Etch that we have a type called Base, which can be marshalled/demamarshalled using the BaseSerializer. Other pojos need to be defined similarly&lt;br /&gt;2. Definition of a generic method invokeServerMethod. This is capable of accepting and returning Etch currently supported java types and Base types. It takes the name of the method to be executed, and its parameters.&lt;br /&gt;&lt;br /&gt;We now define EtchClient, our client, The Etch client will be able to execute the following on the server:&lt;br /&gt;    a. Invoke method whoIsOnline which returns a String[].&lt;br /&gt;    b. Invoke method login which accepts a String and returns a boolean.&lt;br /&gt;    c. Invoke a void method with no params&lt;br /&gt;    d. Invoke a method which sends a custom pojo com.etchTrials.Base object.&lt;br /&gt;            Server alters this object and client receives the changed values&lt;br /&gt;&lt;br /&gt;We also define EtchServer, which implements the methods defined in the IDL.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;package com.etchTrials;&lt;br /&gt;&lt;br /&gt;import java.lang.reflect.Method;&lt;br /&gt;&lt;br /&gt;import etch.util.core.io.Transport;&lt;br /&gt;&lt;br /&gt;public class EtchClient extends BaseGenericClient {&lt;br /&gt;&lt;br /&gt;        private RemoteGenericServer server;&lt;br /&gt;&lt;br /&gt;        public EtchClient() {&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        protected void setUp() {&lt;br /&gt;                try {&lt;br /&gt;                        String uri = "tcp://0.0.0.0:4005?TcpTransport.reconnectDelay=4000";&lt;br /&gt;                        System.out.println("URI " + uri);&lt;br /&gt;                        final EtchClient client = this;&lt;br /&gt;                        server = GenericHelper.newServer(uri, null,&lt;br /&gt;                                        new GenericHelper.GenericClientFactory() {&lt;br /&gt;                                                public GenericClient newGenericClient(&lt;br /&gt;                                                                RemoteGenericServer server) throws Exception {&lt;br /&gt;                                                        return client;&lt;br /&gt;                                                }&lt;br /&gt;                                        });&lt;br /&gt;&lt;br /&gt;                        server._startAndWaitUp(4000);&lt;br /&gt;                        System.out.println("Client server started");&lt;br /&gt;                } catch (Exception e) {&lt;br /&gt;                        e.printStackTrace();&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public void close() {&lt;br /&gt;                try {&lt;br /&gt;                        System.out.println("Closing time");&lt;br /&gt;                        server._transportControl(Transport.STOP, null);&lt;br /&gt;                } catch (Exception e) {&lt;br /&gt;                        e.printStackTrace();&lt;br /&gt;                }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        //test method which invokes some methods on Base object&lt;br /&gt;        public void testInvokeServer() {&lt;br /&gt;                String[] whoIsOnline = (String[]) server.invokeServerMethod("whoIsOnline", null);&lt;br /&gt;                for (String who: whoIsOnline) {&lt;br /&gt;                        System.out.println("whoIsOnline returns " + who) ;&lt;br /&gt;                }&lt;br /&gt;                System.out.println("Login returns " + server.invokeServerMethod("login", new String[] {"Browser1"}));&lt;br /&gt;                System.out.println("Invoking voidMethod ");&lt;br /&gt;server.invokeServerMethod("voidMethod", null);&lt;br /&gt;                System.out.println("Invoked voidMethod ");&lt;br /&gt;                //String user = "User";&lt;br /&gt;                Base base = new Base();&lt;br /&gt;                base.setAge(25);&lt;br /&gt;                base.setName("Any value");&lt;br /&gt;                String name = "Change from server";&lt;br /&gt;                Object[] params = new Object[] {base, name};&lt;br /&gt;                System.out.println("Invoking withParams");&lt;br /&gt;                Base returnBase = (Base) server.invokeServerMethod("withParams", params);&lt;br /&gt;                System.out.println("Base returned is " + returnBase);&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public static void main(String[] args) {&lt;br /&gt;                EtchClient client = new EtchClient();&lt;br /&gt;                client.setUp();&lt;br /&gt;                client.testInvokeServer();&lt;br /&gt;                client.close();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The Etch client will be able to execute the following on the server:&lt;br /&gt;    a. Invoke method whoIsOnline which returns a String[].&lt;br /&gt;    b. Invoke method login which accepts a String and returns a boolean.&lt;br /&gt;    c. Invoke a void method with no params&lt;br /&gt;    d. Invoke a method which sends a custom pojo com.etchTrials.Base object.&lt;br /&gt;            Server alters this object and client receives the changed values&lt;br /&gt;&lt;br /&gt;Finally, we have the EtchServer:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;package com.etchTrials;&lt;br /&gt;&lt;br /&gt;import etch.bindings.java.support.ServerFactory;&lt;br /&gt;import etch.util.core.io.Transport;&lt;br /&gt;&lt;br /&gt;public class EtchServer extends BaseGenericServer implements&lt;br /&gt;                GenericHelper.GenericServerFactory {&lt;br /&gt;&lt;br /&gt;        public EtchServer(RemoteGenericClient client) {&lt;br /&gt;                System.out.println("Client " + client);&lt;br /&gt;                this.client = client;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public EtchServer() {&lt;br /&gt;                System.out.println("Server constructor");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public Object invokeServerMethod(String method, Object[] params) {&lt;br /&gt;                //System.out.println("Inside invoking the method");&lt;br /&gt;                if (method.equals("whoIsOnline")) {&lt;br /&gt;                        return whoIsOnline(params);&lt;br /&gt;                }&lt;br /&gt;                else if (method.equals("login")) {&lt;br /&gt;                        return login(params);&lt;br /&gt;                }&lt;br /&gt;                else if (method.equals("voidMethod")) {&lt;br /&gt;                        voidMethod();&lt;br /&gt;                        return null;&lt;br /&gt;                }&lt;br /&gt;                else if (method.equals("withParams")) {&lt;br /&gt;                        return withParams(params);&lt;br /&gt;                }&lt;br /&gt;                return null;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private Boolean login(Object[] params) {&lt;br /&gt;                String userName = (String) params[0];&lt;br /&gt;                System.out.println("login: User is logged in now " + userName);&lt;br /&gt;                return new Boolean(true);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private String[] whoIsOnline(Object[] params) {&lt;br /&gt;                String[] names = new String[] { "ChatterBoxA", "ChatterBoxB" };&lt;br /&gt;                return names;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private void voidMethod() {&lt;br /&gt;                System.out.println("voidMethod: Inside Void method");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt; private Base withParams(Object[] params) {&lt;br /&gt;                System.out.println("withParams: With params method");&lt;br /&gt;                //String clientName = (String) params[0];&lt;br /&gt;                //System.out.println(params[1].getClass().toString());&lt;br /&gt;                Base base = (Base) params[0];&lt;br /&gt;                //do some calculations&lt;br /&gt;                //return clientName + &lt;br /&gt;                System.out.println("withParams: Received base object from client" + base);&lt;br /&gt;                String name = (String) params[1];&lt;br /&gt;                base.setAge(base.getAge() * 2);&lt;br /&gt;                base.setName(name);&lt;br /&gt;                return base;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private RemoteGenericClient client;&lt;br /&gt;&lt;br /&gt;        public void connect(String host, String port) {&lt;br /&gt;                try {&lt;br /&gt;                        String uri = "tcp://" + host + ":" + port;&lt;br /&gt;                        System.out.println("URI " + uri);&lt;br /&gt;                        Transport&lt;ServerFactory&gt; listener = GenericHelper.newListener(uri,&lt;br /&gt;                                        null, this);&lt;br /&gt;&lt;br /&gt;                        listener.transportControl(Transport.START_AND_WAIT_UP, 4000);&lt;br /&gt;                        System.out.println("Started");&lt;br /&gt;                } catch (Exception e) {&lt;br /&gt;                        e.printStackTrace();&lt;br /&gt;                }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public void listen() {&lt;br /&gt;                System.out.println("listen");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public void close() {&lt;br /&gt;                System.out.println("close");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public GenericServer newGenericServer(RemoteGenericClient client)&lt;br /&gt;                        throws Exception {&lt;br /&gt;                return new EtchServer(client);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        public static void main(String[] args) {&lt;br /&gt;                EtchServer server = new EtchServer();&lt;br /&gt;                System.out.println("New Server");&lt;br /&gt;                server.connect("0.0.0.0", "4005");&lt;br /&gt;                System.out.println("Up and running");&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3318790726985114204?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3318790726985114204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3318790726985114204' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3318790726985114204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3318790726985114204'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2010/02/passing-custom-objects-with-apache-etch.html' title='Passing custom objects with Apache Etch.'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6726336314064741574</id><published>2009-12-15T21:39:00.002+05:30</published><updated>2009-12-15T21:42:50.780+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='JAQL'/><category scheme='http://www.blogger.com/atom/ns#' term='hadoop'/><title type='text'>JAQL</title><content type='html'>Wondering what's up at &lt;a href="http://code.google.com/p/jaql/"&gt;JAQL&lt;/a&gt;. Seems they are still at Hadoop 0.18, whereas Hadoop has moved to 0.20.1. Anybody besides IBM using it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6726336314064741574?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6726336314064741574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6726336314064741574' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6726336314064741574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6726336314064741574'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2009/12/jaql.html' title='JAQL'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-5640377258042779677</id><published>2009-07-25T22:15:00.002+05:30</published><updated>2009-07-25T22:17:40.767+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Hibernate'/><title type='text'>Unknown Entity with Hibernate 3</title><content type='html'>While using Hibernate 3 and JPA, remember to place persistence.xml in the classes/META-INF folder. Otherwise, you will get Exception in thread "main" org.hibernate.MappingException: Unknown entity&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-5640377258042779677?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/5640377258042779677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=5640377258042779677' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5640377258042779677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5640377258042779677'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2009/07/unknown-entity-with-hibernate-3.html' title='Unknown Entity with Hibernate 3'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8176767052956612488</id><published>2009-06-19T08:08:00.002+05:30</published><updated>2009-06-19T08:44:26.312+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='cloud computing'/><category scheme='http://www.blogger.com/atom/ns#' term='hadoop'/><title type='text'>Hadoop On Ubuntu</title><content type='html'>I am ramping myself up to MapReduce and GFS as part of a very exciting new opportunity. I needed to install Hadoop-0.20 on my Ubuntu  desktop. I followed &lt;a href="http://www.michael-noll.com/wiki/Running_Hadoop_On_Ubuntu_Linux_(Single-Node_Cluster)"&gt;Michael Noll's excellent tutorial&lt;/a&gt; as well as the &lt;a href="http://wiki.apache.org/hadoop/QuickStart"&gt;quickstart&lt;/a&gt; for the release. Michael's tutorial is not updated yet for the split of config files in Hadoop 0.20, and he has mentioned that clearly. So, I followed his tutorial and when it comes to the configs, I used the quickstart information for core-site, hdfs-site and mapred-site. &lt;br /&gt;&lt;br /&gt;I was however getting stuck with a strange issue. jps would show the jobtracker process for a while, and then it would get killed. The logs had a java.io.IOException: /tmp/hadoop....jobtracker-info file could only be replicated to 0 nodes instead of 1. &lt;br /&gt;The Hadoop mailing lists did not have any reference to this issue. All I found was &lt;a href="http://issues.apache.org/jira/browse/HADOOP-5921"&gt;this bug&lt;/a&gt;. I read on Cloudera's &lt;a href="http://www.cloudera.com/blog/2009/05/07/what’s-new-in-hadoop-core-020/"&gt;page&lt;/a&gt; that start-all and stop-all are deprecated, but I could not find any reference to it on Hadoop's wiki. &lt;br /&gt;&lt;br /&gt;After various hits and trials, what worked for me was to edit start-all.sh. I first started the dfs and then waited for 5 minutes. Only then did I brin up the mapred deamons. This solved it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8176767052956612488?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8176767052956612488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8176767052956612488' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8176767052956612488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8176767052956612488'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2009/06/hadoop-on-ubuntu.html' title='Hadoop On Ubuntu'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7860039454360583850</id><published>2009-03-22T17:57:00.003+05:30</published><updated>2009-03-23T23:23:46.169+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><title type='text'>Infamous Error 150 while creating a table in MySQL</title><content type='html'>I am working on a data migration and defining the schema. The application will eventually be implemented in Ruby on Rails, but instead of migrations, the client needed the sql dump. My CREATE TABLE statement was failing with errno 150, and SHOW ENGINE INNODB STATUS was not helpful. The Foreign Key section kept telling me :&lt;br /&gt;&lt;br /&gt;Cannot resolve table name close to:&lt;br /&gt; (id)) engine=innodb&lt;br /&gt;&lt;br /&gt;I was completely zapped, both the related tables were INNODB tables, the columns were same type and size, indices were defined correctly. It was after sometime that I realized that the syntax for creating the foreign key was wrong. I was saying:&lt;br /&gt;&lt;br /&gt;FOREIGN KEY (parent_id) REFERENCES parent.id&lt;br /&gt;&lt;br /&gt;But it should be:&lt;br /&gt;FOREIGN KEY (parent_id) REFERENCES parent(id)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7860039454360583850?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7860039454360583850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7860039454360583850' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7860039454360583850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7860039454360583850'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2009/03/infamous-error-150-while-creating-table.html' title='Infamous Error 150 while creating a table in MySQL'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6668458969670207472</id><published>2008-08-31T21:21:00.002+05:30</published><updated>2008-08-31T22:12:13.565+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='laptop'/><category scheme='http://www.blogger.com/atom/ns#' term='Dell'/><category scheme='http://www.blogger.com/atom/ns#' term='customer review'/><title type='text'>Buying from Dell.</title><content type='html'>I decided on buying a Dell laptop. Dell was offering 2 GHz+ processors, which was a very tempting proposition. As I needed the laptop as soon as possible, I bought it from the direct Dell stores instead of the site. There were two choices - Vista prebundled or no OS. Needless to say, I went with no OS. Here began the most harrowing customer experience of my life. &lt;br /&gt;&lt;br /&gt;The FreeDOS CD which came with the laptop did not work. It failed to recognize the hard drive. RedHat could not be installed either, no hard disk again. Fedora Core got installed, but my wifi button would refuse to power on. Windows XP would not get installed either, the installation hung midway. &lt;br /&gt;&lt;br /&gt;Dell refuses to provide drivers for any OS except Vista! A clear way to dissuade people from going the non proprietary, non-Microsoft way. An intelligent financial strategy to subvert legalities and yet force the customer to buy tightly integrated systems. &lt;br /&gt; &lt;br /&gt;When I called Dell Support, a customer service representative with no know how whatsoever told me that :&lt;br /&gt;&lt;br /&gt;1. Dell can not support non factory OS.&lt;br /&gt;2. They have NO non Vista drivers.&lt;br /&gt;3. They cant tell me why FreeDOS is not installing. Nor will they help me install it, even though they gave the CD with the laptop.&lt;br /&gt;&lt;br /&gt;45 minutes of interaction with the customer support guy had my head spinning. I felt absolutely cheated. Luckily, threats of suing the company worked, and the rep digged through some more guides to tell me some BIOS changes needed to install Windows XP. &lt;br /&gt;Eureka, dream machine and excellent customer service!!!!&lt;br /&gt;&lt;br /&gt;Apparently, the bundling with Vista is so strong that the BIOS itself is pre-configured. No documentation on what to change obviously from Dell, lest some lowly mortal attempt a lesser OS than holier than thou Vista.&lt;br /&gt;&lt;br /&gt;Anti-trust anyone ?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6668458969670207472?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6668458969670207472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6668458969670207472' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6668458969670207472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6668458969670207472'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2008/08/buying-from-dell.html' title='Buying from Dell.'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2192370480944625978</id><published>2008-08-31T19:55:00.002+05:30</published><updated>2008-08-31T20:06:41.685+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='gdata'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>YouTube API does not work through Resin</title><content type='html'>I have run into a strange issue with the youtube api. I am able to upload videos through the browser and verify them in my youtube acocunt. However, when I try to retrieve the videos, I do not get them. I am able to retrieve correctly through a junit test case.&lt;br /&gt;&lt;br /&gt;After a lot of digging on the forum, I found this post:&lt;br /&gt;&lt;a href="http://groups.google.com/group/youtube-api-gdata/browse_thread/thread/1960212be5e90238/819fb4e7c7b41d2f?lnk=gst&amp;q=getTotalResults#819fb4e7c7b41d2f"&gt;Different behaviour under Tomcat and Resin&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The client api documentation does not suggest any supported environments or versions. &lt;a href="http://code.google.com/apis/gdata/articles/java_client_lib.html"&gt;GData Doc&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2192370480944625978?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2192370480944625978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2192370480944625978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2192370480944625978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2192370480944625978'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2008/08/youtube-api-does-not-work-through-resin.html' title='YouTube API does not work through Resin'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-1409899743247451170</id><published>2008-03-18T15:16:00.004+05:30</published><updated>2008-03-18T15:24:08.409+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='freelancing'/><category scheme='http://www.blogger.com/atom/ns#' term='career'/><category scheme='http://www.blogger.com/atom/ns#' term='consulting'/><title type='text'>Pricing consulting services</title><content type='html'>I have been wondering a bit about the business model and economics of freelancing. Stumbled across some interesting links:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://procnew.com/freelance-consulting-rates.html"&gt;Freelance Consulting Rates&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.careerlab.com/art_consulting_fees.htm"&gt;How to Price Consulting Services&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hotgigs.com"&gt;Hotgigs&lt;/a&gt; has some good reference data based on skill set&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-1409899743247451170?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/1409899743247451170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=1409899743247451170' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1409899743247451170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1409899743247451170'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2008/03/pricing-consulting-services.html' title='Pricing consulting services'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-5152143249760621182</id><published>2008-03-18T15:16:00.000+05:30</published><updated>2008-03-18T15:16:01.835+05:30</updated><title type='text'>Six resolutions for a new year of consulting | IT Consultant | TechRepublic.com</title><content type='html'>Came across some interesting new year resultions - &lt;a href="http://blogs.techrepublic.com.com/project-management/?p=182"&gt;Six resolutions for a new year of consulting | IT Consultant | TechRepublic.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-5152143249760621182?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://blogs.techrepublic.com.com/project-management/?p=182' title='Six resolutions for a new year of consulting | IT Consultant | TechRepublic.com'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/5152143249760621182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=5152143249760621182' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5152143249760621182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5152143249760621182'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2008/03/six-resolutions-for-new-year-of.html' title='Six resolutions for a new year of consulting | IT Consultant | TechRepublic.com'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-950785729316212089</id><published>2008-02-28T16:36:00.000+05:30</published><updated>2008-02-28T16:36:13.573+05:30</updated><title type='text'>The 10 O’Clock Rule at LifeClever ;-) Tips for Design and Life</title><content type='html'>Ruchir sent me the following link&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.lifeclever.com/the-10-oclock-rule/"&gt;The 10 O’Clock Rule at LifeClever ;-) Tips for Design and Life&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I think this makes a lot of sense. For a person like me who gets confused every day about what to wear and how to dress the kids up, if I lay out mine and the kids' clothes the night before, it surely helps. One thing I have also realized helps a ton is to clean up the house before going to sleep, that ensures one wakes up to a clean house and does not get disoriented in the morning, trying to sort things out. As a work from home mom of a toddler and an infant, I probably need all the efficiency(and more!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-950785729316212089?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.lifeclever.com/the-10-oclock-rule/' title='The 10 O’Clock Rule at LifeClever ;-) Tips for Design and Life'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/950785729316212089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=950785729316212089' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/950785729316212089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/950785729316212089'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2008/02/10-oclock-rule-at-lifeclever-tips-for.html' title='The 10 O’Clock Rule at LifeClever ;-) Tips for Design and Life'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-4799303111183722786</id><published>2008-02-26T22:02:00.002+05:30</published><updated>2008-02-26T22:07:33.813+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Struts2'/><title type='text'>Good site for Struts2</title><content type='html'>&lt;a href="http://www.wantii.com/wordpress/"&gt;WanTii, Inc. Tech Blog - Discussion of Java on the Web Server…&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-4799303111183722786?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/4799303111183722786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=4799303111183722786' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/4799303111183722786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/4799303111183722786'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2008/02/good-site-for-struts2.html' title='Good site for Struts2'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3646906526893559377</id><published>2007-10-14T16:50:00.000+05:30</published><updated>2007-10-14T17:24:58.062+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>JSF immediate attribute</title><content type='html'>Usage of JSF immediate attribute can lead to a variety of issues, so it is a handle with care piece will one learns the JSF life cycle, different phases and the bypassing through immediate. For more, check:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wiki.apache.org/myfaces/ClearInputComponents"&gt;ClearInputComponents - Myfaces Wiki&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3646906526893559377?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://wiki.apache.org/myfaces/ClearInputComponents' title='JSF immediate attribute'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3646906526893559377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3646906526893559377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3646906526893559377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3646906526893559377'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/10/jsf-immediate-attribute.html' title='JSF immediate attribute'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7783521944613582714</id><published>2007-10-09T19:30:00.000+05:30</published><updated>2007-10-09T19:30:35.608+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>Enterprise Java Community: Building Custom JSF UI Components</title><content type='html'>A brilliant article on JSF : &lt;a href="http://www.theserverside.com/tt/articles/article.tss?l=BuildingCustomJSF"&gt;Enterprise Java Community: Building Custom JSF UI Components&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7783521944613582714?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.theserverside.com/tt/articles/article.tss?l=BuildingCustomJSF' title='Enterprise Java Community: Building Custom JSF UI Components'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7783521944613582714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7783521944613582714' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7783521944613582714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7783521944613582714'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/10/enterprise-java-community-building.html' title='Enterprise Java Community: Building Custom JSF UI Components'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3925027043121667373</id><published>2007-10-09T09:34:00.000+05:30</published><updated>2007-10-09T09:35:24.335+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>Fixing Required messages in JSF</title><content type='html'>Another interesting phase listener for required messages &lt;a href="http://www.jroller.com/RickHigh/entry/fixing_required_messages_in_jsf"&gt;Fixing Required messages in JSF&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;JSF 1.2 components already support requiredMessage attribute, so this may not be handy there. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jroller.com/ksevindik/entry/customizing_jsf_required_field_messages"&gt;Customizing JSF Required Field Messages per Component Instance&lt;/a&gt; is another flavour of the same.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3925027043121667373?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.jroller.com/RickHigh/entry/fixing_required_messages_in_jsf' title='Fixing Required messages in JSF'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3925027043121667373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3925027043121667373' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3925027043121667373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3925027043121667373'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/10/fixing-required-messages-in-jsf.html' title='Fixing Required messages in JSF'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-627617659089380868</id><published>2007-10-09T08:00:00.000+05:30</published><updated>2007-10-09T08:00:48.269+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>Designing and Implementing Web Application Interfaces</title><content type='html'>Wonderful use of phase listeners in JSF : &lt;a href="http://www.oracle.com/technology/pub/articles/masterj2ee/j2ee_wk7.html"&gt;Designing and Implementing Web Application Interfaces&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It outlines how JSF can be enhanced to define custom error messages per component. Mst read for all those who are on JSF 1.1&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-627617659089380868?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.oracle.com/technology/pub/articles/masterj2ee/j2ee_wk7.html' title='Designing and Implementing Web Application Interfaces'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/627617659089380868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=627617659089380868' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/627617659089380868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/627617659089380868'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/10/deltion-creating-traffic-office-vision.html' title='Designing and Implementing Web Application Interfaces'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2420839353028745351</id><published>2007-10-05T17:02:00.000+05:30</published><updated>2007-10-05T17:13:28.126+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>JSF dropdown with BigInteger keys</title><content type='html'>We wanted to create a drop down with JSF which had keys as java.math.BigInteger and labels as strings. The drop down was to be pre selected with a value. If everything is string, string, thinds work well. However, the drop down value is not prepopulated if it is bound to a BigInteger. Eventually, we were able to solve this with the following code:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;JSP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br/&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br/&gt;&lt;br /&gt;&amp;lt;!DOCTYPE HTML PUBLIC \&amp;quot;-//W3C//DTD HTML 4.01 Transitional//EN\&amp;quot;&lt;br /&gt;\&amp;quot;http://www.w3.org/TR/html4/loose.dtd\&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;%@ page contentType=\&amp;quot;text/html;charset=windows-1252\&amp;quot;%&amp;gt;&lt;br /&gt;&amp;lt;%@ taglib uri=\&amp;quot;http://java.sun.com/jsf/html\&amp;quot; prefix=\&amp;quot;h\&amp;quot;%&amp;gt;&lt;br /&gt;&amp;lt;%@ taglib uri=\&amp;quot;http://java.sun.com/jsf/core\&amp;quot; prefix=\&amp;quot;f\&amp;quot;%&amp;gt;&lt;br /&gt;&amp;lt;f:view&amp;gt;&lt;br /&gt;  &amp;lt;html&amp;gt;&lt;br /&gt;    &amp;lt;head&amp;gt;&lt;br /&gt;      &amp;lt;meta http-equiv=\&amp;quot;Content-Type\&amp;quot;&lt;br /&gt;            content=\&amp;quot;text/html; charset=windows-1252\&amp;quot;/&amp;gt;&lt;br /&gt;      &amp;lt;title&amp;gt;ConversionTrial&amp;lt;/title&amp;gt;&lt;br /&gt;    &amp;lt;/head&amp;gt;&lt;br /&gt;    &amp;lt;body&amp;gt;&amp;lt;h:form&amp;gt;&lt;br /&gt;    &amp;lt;h:selectOneMenu id=\&amp;quot;menu\&amp;quot; value=\&amp;quot;#{ConversionBean.dto.code}\&amp;quot;&amp;gt;&lt;br /&gt;         &amp;lt;f:selectItems value=\&amp;quot;#{ConversionBean.valueList}\&amp;quot;/&amp;gt;&lt;br /&gt;    &amp;lt;/h:selectOneMenu&amp;gt;&lt;br /&gt;    &amp;lt;/h:form&amp;gt;&amp;lt;/body&amp;gt;&lt;br /&gt;  &amp;lt;/html&amp;gt;&lt;br /&gt;&amp;lt;/f:view&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Managed Bean&lt;/span&gt;&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br/&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br/&gt;&lt;br /&gt;package&amp;nbsp;view;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;java.math.BigInteger;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;java.util.ArrayList;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;javax.faces.model.SelectItem;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public&amp;nbsp;class&amp;nbsp;ConversionBean&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;DTO&amp;nbsp;dto;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;ArrayList&amp;nbsp;valueList;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ConversionBean()&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dto&amp;nbsp;=&amp;nbsp;new&amp;nbsp;DTO(new&amp;nbsp;BigInteger(\&amp;quot;10\&amp;quot;),&amp;nbsp;\&amp;quot;Large\&amp;quot;);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;ArrayList&amp;nbsp;getValueList(){&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;valueList&amp;nbsp;=&amp;nbsp;new&amp;nbsp;ArrayList();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;valueList.add(new&amp;nbsp;SelectItem(new&amp;nbsp;BigInteger(\&amp;quot;0\&amp;quot;),&amp;nbsp;\&amp;quot;Small\&amp;quot;));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;valueList.add(new&amp;nbsp;SelectItem(new&amp;nbsp;BigInteger(\&amp;quot;5\&amp;quot;),&amp;nbsp;\&amp;quot;Medium\&amp;quot;));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;valueList.add(new&amp;nbsp;SelectItem(new&amp;nbsp;BigInteger(\&amp;quot;10\&amp;quot;),&amp;nbsp;\&amp;quot;Large\&amp;quot;));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;valueList;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;DTO&amp;nbsp;getDto(){&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;this.dto;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;DTO&lt;/span&gt;&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br/&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br/&gt;&lt;br /&gt;package&amp;nbsp;view;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;java.math.BigInteger;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public&amp;nbsp;class&amp;nbsp;DTO&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;BigInteger&amp;nbsp;code;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;String&amp;nbsp;val;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;DTO(BigInteger&amp;nbsp;code,&amp;nbsp;String&amp;nbsp;val)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.code&amp;nbsp;=&amp;nbsp;code;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.val&amp;nbsp;=&amp;nbsp;val;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;void&amp;nbsp;setCode(BigInteger&amp;nbsp;s){&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(\&amp;quot;setCode&amp;nbsp;to&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;s);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.code&amp;nbsp;=&amp;nbsp;s;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;BigInteger&amp;nbsp;getCode(){&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(\&amp;quot;getCode&amp;nbsp;returns&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;code);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;this.code;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2420839353028745351?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2420839353028745351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2420839353028745351' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2420839353028745351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2420839353028745351'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/10/jsf-dropdown-with-biginteger-keys.html' title='JSF dropdown with BigInteger keys'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-1173841825294199268</id><published>2007-09-24T21:39:00.000+05:30</published><updated>2007-09-24T21:41:45.090+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><title type='text'>Hackers and Painters</title><content type='html'>Something I have always believed in, but never had the right words to express. Brilliant description of the creativity and artistry involved in the making of software: &lt;a href="http://www.paulgraham.com/hp.html"&gt;Hackers and Painters&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-1173841825294199268?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.paulgraham.com/hp.html' title='Hackers and Painters'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/1173841825294199268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=1173841825294199268' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1173841825294199268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1173841825294199268'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/09/hackers-and-painters.html' title='Hackers and Painters'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-4695856514228800018</id><published>2007-09-20T19:37:00.000+05:30</published><updated>2007-09-20T19:47:52.462+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><title type='text'>Surprising tip</title><content type='html'>I was taken aback by the tip &lt;a href="http://sdnshare.com/view.jsp?id=1013"&gt;A Very Simple Way to Skip Part of Code Without Using Comment Symbols&lt;/a&gt; duly linked from &lt;a href="http://java.sun.com"&gt;http://java.sun.com&lt;/a&gt;. It is a surprise way of inserting return statements in the middle of the code to test only the functionality upto the point of return. &lt;br /&gt;&lt;br /&gt;Commenting out code and testing, or creating appropriate test harnesses so that all cases can be covered is surprisingly not advocated. Nor is the need for modular methods and further breakdown of code logically. &lt;br /&gt;&lt;br /&gt;What is next, Goto ?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-4695856514228800018?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://sdnshare.com/view.jsp?id=1013' title='Surprising tip'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/4695856514228800018/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=4695856514228800018' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/4695856514228800018'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/4695856514228800018'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/09/surprising-tip.html' title='Surprising tip'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3111690839544861039</id><published>2007-09-18T17:03:00.000+05:30</published><updated>2007-09-18T17:48:07.130+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>Sortable table using JSF and AJAX4JSF</title><content type='html'>I have written about AJAX and JSF in my &lt;a href="http://sonalgoyal.blogspot.com/2007/09/jsf-and-ajax.html#links"&gt;previous post&lt;/a&gt;. Let us now look at a way to implement sortable tables using JSF and AJAX. We want to build a table which has the header as links. If a particular link is clicked, the table entries are sorted based on the header clicked. We want the entire functionality to be AJAX based, so that only part of the page is refreshed.&lt;br /&gt;&lt;br /&gt;A normal JSF table looks like this:&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br /&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;h:datatable id=&amp;quot;addressTableHeader&amp;quot; border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&amp;gt;&lt;br/&gt;            &amp;lt;h:column&amp;gt;&lt;br/&gt;                &amp;lt;f:facet name=&amp;quot;header&amp;quot;&amp;gt;&lt;br/&gt;                        &amp;lt;h:outputtext value=&amp;quot;Post Code&amp;quot;&amp;gt;                                        &lt;br/&gt;                &amp;lt;/f:facet&amp;gt;    &lt;br/&gt;            &amp;lt;/h:column&amp;gt;&lt;br/&gt;            &amp;lt;h:column&amp;gt;&lt;br/&gt;                &amp;lt;f:facet name=&amp;quot;header&amp;quot;&amp;gt;&lt;br/&gt;                         &amp;lt;h:outputtext value=&amp;quot;Street&amp;quot;&amp;gt;&lt;br/&gt;                &amp;lt;/f:facet&amp;gt;&lt;br/&gt;            &amp;lt;/h:column&amp;gt;&lt;br/&gt;&amp;lt;/h:dataTable&amp;gt;&lt;br/&gt;&amp;lt;h:datatable id=&amp;quot;addressTableBody&amp;quot; var=&amp;quot;tableData&amp;quot; value=&amp;quot;#{Bean.addressList}&amp;quot;&amp;gt;&lt;br/&gt;            &amp;lt;h:column&amp;gt;&lt;br/&gt;                &amp;lt;h:outputtext value=&amp;quot;#{tabledata.postcode}&amp;quot;&amp;gt;&lt;br/&gt;            &amp;lt;/h:column&amp;gt;&lt;br/&gt;            &amp;lt;h:column&amp;gt;&lt;br/&gt;                &amp;lt;h:outputtext value=&amp;quot;#{tabledata.street}&amp;quot;&amp;gt;&lt;br/&gt;             &amp;lt;/h:column&amp;gt;            &lt;br/&gt;&amp;lt;/h:dataTable&amp;gt;&lt;br/&gt;        &lt;br/&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The backing bean Bean.java has a method &lt;pre style="font-size:90%;color:#009000;"&gt;getAddressList()&lt;/pre&gt; which wraps an ArrayList inside a ListDataModel and returns it.&lt;br /&gt;&lt;br /&gt;We modify the table header from plain text to links which fire AJAX requests, using Ajax4JSF. We want the table body to be refreshed when the header is pressed, so we specify that in the reRender property of the commandLink.&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br /&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br /&gt;&amp;lt;h:datatable id=&amp;quot;addressTableHeader&amp;quot; border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&amp;gt;&lt;br/&gt;            &amp;lt;h:column&amp;gt;&lt;br/&gt;                &amp;lt;f:facet name=&amp;quot;header&amp;quot;&amp;gt;&lt;br/&gt;                    &amp;lt;a4j:commandlink action=&amp;quot;#{Bean.postcodeSort}&amp;quot; ajaxsingle=&amp;quot;true&amp;quot; rerender=&amp;quot;addressTableBody&amp;quot; immediate=&amp;quot;true&amp;quot;&amp;gt;&lt;br/&gt;                        &amp;lt;h:outputtext value=&amp;quot;Post Code&amp;quot; styleclass=&amp;quot;tariffpopupsearchheading&amp;quot;&amp;gt;&lt;br/&gt;                    &amp;lt;/a4j:commandLink&amp;gt;                    &lt;br/&gt;                &amp;lt;/f:facet&amp;gt;         &lt;br/&gt;                &lt;br/&gt;            &amp;lt;/h:column&amp;gt;&lt;br/&gt;            &amp;lt;h:column&amp;gt;&lt;br/&gt;                &amp;lt;f:facet name=&amp;quot;header&amp;quot;&amp;gt;&lt;br/&gt;                     &amp;lt;a4j:commandlink action=&amp;quot;#{Bean.streetSort}&amp;quot; ajaxsingle=&amp;quot;true&amp;quot; rerender=&amp;quot;addressTableBody&amp;quot; immediate=&amp;quot;true&amp;quot;&amp;gt;&lt;br/&gt;                        &amp;lt;h:outputtext value=&amp;quot;Street&amp;quot; styleclass=&amp;quot;tariffpopupsearchheading&amp;quot;&amp;gt;&lt;br/&gt;                    &amp;lt;/a4j:commandLink&amp;gt;  &lt;br/&gt;                &amp;lt;/f:facet&amp;gt;&lt;br/&gt;            &amp;lt;/h:column&amp;gt;&lt;br/&gt;&amp;lt;/h:dataTable&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;We now add a Comparator to the back end code, which can help to sort the ArrayList of data to be presented in the table. The Comparator has different sorting criteria. New methods &lt;pre style="font-size:90%;color:#009000;"&gt;postcodeSort()&lt;/pre&gt; and &lt;pre style="font-size:90%;color:#009000;"&gt;streetSort()&lt;/pre&gt; are added to the Bean, which help to set the sorting criteria on click . The Bean's &lt;pre style="font-size:90%;color:#009000;"&gt;getAddresslist()&lt;/pre&gt; method is modified to pass the appropriate Comparator.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3111690839544861039?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://sonalgoyal.blogspot.com/2007/09/jsf-and-ajax.html#links' title='Sortable table using JSF and AJAX4JSF'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3111690839544861039/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3111690839544861039' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3111690839544861039'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3111690839544861039'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/09/sortable-table-using-jsf-and-ajax4jsf.html' title='Sortable table using JSF and AJAX4JSF'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3996070011105854692</id><published>2007-09-14T13:17:00.000+05:30</published><updated>2007-09-14T13:17:58.276+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical Java'/><title type='text'>How to Handle Java Finalization's Memory-Retention Issues</title><content type='html'>Interesting article on the pitfalls of Java finalization : &lt;a href="http://java.sun.com/developer/technicalArticles/javase/finalization/"&gt;How to Handle Java Finalization's Memory-Retention Issues&lt;/a&gt;. Wonder whether finalization really makes sense.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3996070011105854692?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://java.sun.com/developer/technicalArticles/javase/finalization/' title='How to Handle Java Finalization&apos;s Memory-Retention Issues'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3996070011105854692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3996070011105854692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3996070011105854692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3996070011105854692'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/09/how-to-handle-java-finalizations-memory.html' title='How to Handle Java Finalization&apos;s Memory-Retention Issues'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-4521308473314684733</id><published>2007-09-12T16:10:00.000+05:30</published><updated>2007-09-12T16:25:09.139+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>JSF and AJAX</title><content type='html'>The &lt;a href="http://labs.jboss.com/file-access/default/members/jbossajax4jsf/freezone/docs/devguide/en/html/index.html"&gt;Ajax4jsf Framework&lt;/a&gt; is a very interesting and fruitful way of adding AJAX support to the JSF applications. I do not know much AJAX, but I was able to add AJAX support to my application easily.&lt;br /&gt;&lt;br /&gt;An interesting link for re-rendering input text boxes. can be found &lt;a href="http://livedemo.exadel.com/richfaces-local-value-demo/"&gt;here&lt;/a&gt;. I struggled a lot with this concept, but the link helped make things very clear.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-4521308473314684733?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/4521308473314684733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=4521308473314684733' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/4521308473314684733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/4521308473314684733'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/09/jsf-and-ajax.html' title='JSF and AJAX'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6283695228412288758</id><published>2007-08-30T20:19:00.000+05:30</published><updated>2007-08-30T20:26:41.765+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>Embedded Tomcat</title><content type='html'>My previous article on &lt;a href="http://sonalgoyal.blogspot.com/2006/07/tweaking-tomcat.html"&gt;Tweaking Tomcat&lt;/a&gt; did not mention the use of Embedded Tomcat, which was necessary to run Tomcat programmatically in the same JVM. More information on this feature can be found in the following links:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.vsj.co.uk/articles/display.asp?id=319 "&gt;http://www.vsj.co.uk/articles/display.asp?id=319 &lt;/a&gt;&lt;br /&gt;&lt;a href="http://http://www.onjava.com/pub/a/onjava/2002/04/03/tomcat.html"&gt;http://www.onjava.com/pub/a/onjava/2002/04/03/tomcat.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6283695228412288758?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://sonalgoyal.blogspot.com/2006/07/tweaking-tomcat.html' title='Embedded Tomcat'/><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6283695228412288758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6283695228412288758' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6283695228412288758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6283695228412288758'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/08/road-less-travelled-tweaking-tomcat.html' title='Embedded Tomcat'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8275199431666623591</id><published>2007-08-08T11:22:00.000+05:30</published><updated>2007-08-08T11:28:14.454+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>Including one JSF page in another</title><content type='html'>It seems there is some confusion on how to include one JSF page within another. Here are the steps to include inner.jsp into outer.jsp&lt;br /&gt;&lt;br /&gt;1. In outer.jsp, include inner.jsp as a simple JSP include.&lt;br /&gt;&lt;br /&gt; &lt;%@ include file="inner.jsp" %&gt;  &lt;br /&gt;&lt;br /&gt;2. In inner.jsp, include the JSF tag libraries&lt;br /&gt;&lt;br /&gt;&lt;%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%&gt;&lt;br /&gt;&lt;%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%&gt;&lt;br /&gt;&lt;br /&gt;3. In inner.jsp, create the subview at the beginning of the page:&lt;br /&gt;&lt;br /&gt;&lt;f:subview id="blah"&gt;&lt;br /&gt;&lt;br /&gt;4. At the end of inner.jsp, close the subview tag&lt;br /&gt;&lt;br /&gt;&lt;/f:subview&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8275199431666623591?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8275199431666623591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8275199431666623591' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8275199431666623591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8275199431666623591'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/08/including-one-jsf-page-in-another.html' title='Including one JSF page in another'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7444474468513528445</id><published>2007-06-04T22:31:00.000+05:30</published><updated>2007-06-04T22:36:32.360+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='IIT'/><title type='text'>Suicides at IIT Kanpur</title><content type='html'>The recent &lt;a href="http://www.telegraphindia.com/1070524/asp/careergraph/story_7818073.asp"&gt;suicides by IIT Kanpur students&lt;/a&gt; has left many disturbed. It is indeed suprising to see four suicides in last two years. Some of my close friends, and ofcourse husband Ruchir, are  IIT Kanpur alumni, and this news has left them wondering regarding the causes. Can it be too much stress? Can it be admission of the wrong candidates into JEE? Are parents to blame? Are self expectations of students leading to this? Can the system have become such as to induce extra burden on the students? Having spent four years at IIT Delhi, I fail to understand the undergraduate stress that can prompt such actions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7444474468513528445?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7444474468513528445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7444474468513528445' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7444474468513528445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7444474468513528445'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/06/suicides-at-iit-kanpur.html' title='Suicides at IIT Kanpur'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2050162330328188683</id><published>2007-05-25T19:39:00.000+05:30</published><updated>2007-05-25T19:44:31.667+05:30</updated><title type='text'>Lack of accountability</title><content type='html'>In my previous post &lt;a href="http://sonalgoyal.blogspot.com/2007/05/eldeco-threatens.html"&gt;Eldeco threatens&lt;/a&gt;, I had stated that we got a letter from Eldeco demanding payment of maintenance charges. I was curious to know about the accounts of last year, and inquired about it to the sender of the letter. The following email chain demonstrates how tough it is to get any response from the officials, it is a never ending loop:&lt;br /&gt;&lt;br /&gt;Vishal,&lt;br /&gt;&lt;br /&gt;Mr Mukesh redirected me to to yet another person - Mr Deepu, Estate Manager. He doesnt possess the accounts of the money paid by us and utilised by Eldeco for site maintenance. Can I please see the accounts of last year and know how my money has been used?&lt;br /&gt;&lt;br /&gt;Sonal&lt;div class="ea"&gt;&lt;span id="e_112c37604dab17b7_1"&gt;- Hide quoted text -&lt;/span&gt;&lt;/div&gt;&lt;span class="q" id="q_112c37604dab17b7_1"&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 5/2/07, &lt;b class="gmail_sendername"&gt;Vishal&lt;/b&gt; &lt;&lt;a href="mailto:vishal@eldecoproperties.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;vishal@eldecoproperties.com&lt;/a&gt;&gt; wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt;       &lt;div bg style="color:#ffffff;"&gt; &lt;div&gt;&lt;span style="font-size:85%;"&gt;Respected Ma'am ,&lt;/span&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;span style="font-size:85%;"&gt;The maintenance deposit for the past year and other  maintenance related queries are handled by maintenance department. &lt;/span&gt;&lt;/div&gt; &lt;div&gt;&lt;span style="font-size:85%;"&gt;You may contact Mr. Mukesh Srivastave in the head office at  the below mentioned number or 0 98186 82012. Also the estate manager at the site  can be contacted for the said query.&lt;/span&gt;&lt;/div&gt; &lt;div&gt;&lt;span style="font-size:85%;"&gt;  &lt;/span&gt;&lt;/div&gt; &lt;div&gt;&lt;span style="font-size:85%;"&gt;With best regards,&lt;br /&gt;&lt;span&gt;Vishal Sehgal&lt;br /&gt;Eldeco Infrastructure  &amp; Properties Ltd.&lt;br /&gt;New Delhi&lt;br /&gt;Phone: 011 4165 9001&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt; &lt;blockquote style="border-left: 2px solid rgb(0, 0, 0); padding-right: 0px; padding-left: 5px; margin-left: 5px; margin-right: 0px;"&gt;   &lt;div style="font-family: arial; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;----- Original Message ----- &lt;/div&gt;   &lt;div style="background: rgb(228, 228, 228) none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; font-family: arial; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt; &lt;b&gt;From:&lt;/b&gt;    &lt;a title="sonalgoyal4@gmail.com" href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;Sonal    Goyal&lt;/a&gt; &lt;/div&gt;   &lt;div style="font-family: arial; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;&lt;b&gt;To:&lt;/b&gt; &lt;a title="vishal@eldecoproperties.com" href="mailto:vishal@eldecoproperties.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; vishal@eldecoproperties.com&lt;/a&gt;    &lt;/div&gt;   &lt;div style="font-family: arial; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;&lt;b&gt;Cc:&lt;/b&gt; &lt;a title="hemant@eldecoproperties.com" href="mailto:hemant@eldecoproperties.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; Hemant Kumar&lt;/a&gt; ; &lt;a title="pankaj@eldecoproperties.com" href="mailto:pankaj@eldecoproperties.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;pankaj@eldecoproperties.com&lt;/a&gt; ;  &lt;/div&gt;   &lt;div style="font-family: arial; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;&lt;b&gt;Sent:&lt;/b&gt; Wednesday, May 02, 2007 3:15    PM&lt;/div&gt;   &lt;div style="font-family: arial; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt;&lt;b&gt;Subject:&lt;/b&gt; Maintenence deposit&lt;/div&gt;    &lt;div&gt;&lt;br /&gt;&lt;/div&gt;Hi Vishal,&lt;br /&gt;&lt;br /&gt;This is in respect to the letter we received    yesterday from you regarding the maintenence deposit. Can you please provide    us the accounts of last year's deposits? Also, we need to know how maintenence    can be clubbed with electicity and water charges?&lt;br /&gt;&lt;br /&gt;Thanks and    Regards,&lt;br /&gt;Sonal &lt;/blockquote&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt; &lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2050162330328188683?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2050162330328188683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2050162330328188683' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2050162330328188683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2050162330328188683'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/05/lack-of-accountability.html' title='Lack of accountability'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7648802348477605921</id><published>2007-05-25T19:27:00.000+05:30</published><updated>2007-05-25T19:32:07.059+05:30</updated><title type='text'>Another endless struggle with Eldeco</title><content type='html'>I got a couple of inquiries from IIT Alumni network about Eldeco and how things stand now. Well friends, here is the email chain which I have been relentlessly pursuing. If there is an update, I will let you know.&lt;br /&gt;&lt;br /&gt;Hemant,&lt;br /&gt;&lt;br /&gt;Yet another effort to get some answers Hemant. Even governement offices can now boast of RTI. Eldeco officials seem to be completely customer decentric. Or should I say this is a planned move?&lt;div class="ea"&gt;&lt;span id="e_112c3779bade31c7_1"&gt;- Hide quoted text -&lt;/span&gt;&lt;/div&gt;&lt;span class="q" id="q_112c3779bade31c7_1"&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt; On 5/21/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt; Hemant,&lt;br /&gt;&lt;br /&gt;Can we get the response in writing from you? Or can we assume from your silence that your company agrees that there is no bloating and there is no other flat which has the same issue.&lt;br /&gt;&lt;br /&gt;Thanks.&lt;br /&gt;Sonal &lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 5/21/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt; Hemant, kindly let me know.&lt;br /&gt;&lt;br /&gt;Thanks.&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 5/19/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;  sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote:&lt;/span&gt; &lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt;Hemant,&lt;br /&gt;&lt;br /&gt;We had a visit by Mr Dubey and Mr Sharma just now and they do not agree that the wooden flooring in the guest bedroom has any issue. We differ on this, as we can see distinct spots where bloating is happening. We are also told that we are the only flat who is complaining of issues with the wooden flooring. If so, kindly give it to us in writing that your company sees no issues with the wooden flooring in the guest bedroom and there are no other complaints of the same nature in other flats. We can then follow it up at our end individually in a manner suited to us.&lt;br /&gt;&lt;br /&gt;Thanks very much,&lt;br /&gt;Sonal&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 5/18/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;   sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt; Hemant, any updates?&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 5/17/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;    sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt; Hi Hemant,&lt;br /&gt;&lt;br /&gt;Can you please answer.&lt;br /&gt;&lt;br /&gt;Sonal&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 5/15/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;     sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote: &lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt;Hi Hemant,&lt;br /&gt;&lt;br /&gt;While the flooring in the kids room is getting replaced, I am not sure what is happening to the guest bedroom bloating and the master bedroom profile. Also, other items on my list, including the EWC, remain unattended. Kindly let me know your take on these.&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;Sonal&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7648802348477605921?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7648802348477605921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7648802348477605921' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7648802348477605921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7648802348477605921'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/05/another-endless-struggle-with-eldeco.html' title='Another endless struggle with Eldeco'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2796579073934443049</id><published>2007-05-09T19:05:00.000+05:30</published><updated>2007-05-09T19:15:31.360+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='IIT'/><title type='text'>IIT and Dilbert</title><content type='html'>I was amused to see some references to my alma mater on &lt;a href="http://dilbertblog.typepad.com/the_dilbert_blog/2007/04/outsource_the_g.html"&gt;Scott Adam's blog.&lt;/a&gt;&lt;br /&gt;IIT surely has become a much bigger name than when I joined it in 1994, thanks to the Silicon Valley revolution and IIT immigrants to the US making it big. However, it seems there is also some contempt in the minds of people about IITians and their quality, as reflected by the comments posted. One big reason for this can be that IIT has become a famous brand, and people assume their loss of employment to be linked with IITians. Nothing could be further from the truth. The IITs together produce about 2200 bachelors in technology every year. Normally, 40% of the class goes abroad for further studies or for employment. Employment for IITians is mostly in areas of advanced technical research, consulting, finance or management. All of which generate more jobs and earn more revenues for the US government. We are not into snatching BPO jobs from people. As for the quality, the success rates of IITians is not a mystery, it is widely known and publicised. Yes, getting through the JEE is tough, probably the toughest exam to crack in the world. Yet, it doesnt mean that people who do not qualify are morons. However, if one doesnt qualify and instead spends one's life in cribbing about the quality of IITians, well, we know for sure where you are headed!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2796579073934443049?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2796579073934443049/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2796579073934443049' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2796579073934443049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2796579073934443049'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/05/iit-and-dilbert.html' title='IIT and Dilbert'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8909904974579565535</id><published>2007-05-02T15:05:00.000+05:30</published><updated>2007-05-02T15:28:25.451+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Eldeco threatens</title><content type='html'>We got a letter today from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Eldeco&lt;/span&gt; asking us to pay the monthly &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;maintenance&lt;/span&gt; deposit. If we fail to do so, our power and water will be cut off. We took possession of the flat last year August(2006) and paid an year's advance deposit. So, our deposit finishes only in August. However, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Eldeco&lt;/span&gt; has always been very prompt in collecting their money, and so they have 'cared' enough to remind us 3-4 months in advance. Needless to say, any letters we write to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Eldeco&lt;/span&gt; never ever elicit any response, leave aside a fast response!&lt;br /&gt;&lt;br /&gt;Now comes the funny part. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Eldeco&lt;/span&gt; has not furnished the accounts for last year. We really do not know where the almost 3k per house we are paying per month is going. I have some guesses, and I am sure you all will have the same guesses, but other than that, the company is silent on the accounts. Maybe &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Eldec officials&lt;/span&gt; need some urgent cash for their &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Merc&lt;/span&gt; &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;maintenance&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;The company has installed a single prepaid electricity system for the entire building for which we have to buy coupons in advance. This is when we had paid about 25k for a proper electricity connection from the electricity board. 25k*72 houses was eaten up by Eldeco, and instead they have taken one single connection from which they have submeters to each house. Now the best part, this prepaid system will be clubbed with the annual &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;maintenance&lt;/span&gt;, and if you have some issues with the &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;maintenance&lt;/span&gt; and want some answers, you have no coice but to pay up, else your water and electricity will be cut off.&lt;br /&gt;&lt;br /&gt;Smart move, are they sadists or what?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8909904974579565535?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8909904974579565535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8909904974579565535' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8909904974579565535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8909904974579565535'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/05/eldeco-threatens.html' title='Eldeco threatens'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3477478276443047820</id><published>2007-04-23T18:59:00.000+05:30</published><updated>2007-04-23T19:16:25.103+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Another dead email chain</title><content type='html'>Email written to Mr Hemant, who apparently is handling our case. More than one week since we last heard back. Thsi email chain is in continuation with our &lt;a href="http://sonalgoyal.blogspot.com/2007/04/eldeco-and-pankaj-bajaj-prove-us-right.html"&gt;April 8 email chain&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table class="mhc" id="mm" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr class="fhr"&gt;&lt;td class="au"&gt;&lt;span id="_user_sonalgoyal4@gmail.com" style="color: rgb(121, 6, 25);"&gt;Sonal Goyal&lt;/span&gt; &lt;/td&gt;&lt;td style="padding-top: 0pt;" width="100%"&gt;&lt;table class="rc" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td id="_mr_1121e775071627f4"&gt;&lt;div&gt;to &lt;span id="_mr_1121e775071627f4_0"&gt;&lt;span id="_upro_hemant@eldecoproperties.com"&gt;Hemant&lt;/span&gt;&lt;/span&gt;, &lt;span id="_mr_1121e775071627f4_1"&gt;&lt;span id="_upro_Ruchir_Agarwal"&gt;Ruchir&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Hemant, can you please spare some time to respond?&lt;div class="ea"&gt;&lt;span id="e_1121e775071627f4_1"&gt;- Hide quoted text -&lt;/span&gt;&lt;/div&gt;&lt;span class="q" id="q_1121e775071627f4_1"&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 4/19/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;sonalgoyal4@gmail.com&lt;/a&gt;&gt; wrote: &lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt;Hi Hemant,&lt;br /&gt;&lt;br /&gt;Its been some time, can we please know the status.&lt;br /&gt;&lt;br /&gt;Thanks.&lt;div&gt; &lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 4/17/07, &lt;b class="gmail_sendername"&gt;Sonal Goyal&lt;/b&gt; &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; sonalgoyal4@gmail.com &lt;/a&gt;&gt; wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt;Hi Hemant,&lt;br /&gt;&lt;br /&gt;Today, I just noticed some bloating of the wooden flooring in the guest room as well. Please add this to the list.&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;Sonal&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="gmail_quote"&gt;On 4/17/07, &lt;b class="gmail_sendername"&gt; Agarwal, Ruchir&lt;/b&gt;  wrote:&lt;/span&gt;&lt;blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"&gt;             &lt;div bg="" link="blue" vlink="purple"  lang="EN-US" style="color:white;"&gt;  &lt;div&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Hi Hemant,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Thanks for your email. I wish to assure you that there has been no "&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;masive internal work" &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;   executed by us for the floors to be in this condition. The only thing that we had got done is the essential wood work in the bedrooms and kitchen, which I don't think would affect a good quality wooden floor. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;We do have other issues apart from the problems with the wooden floor mentioned in my earlier email on this topic. We have already provided a list of such issues to Mr. Deepu (Estate Manager, Eldeco Ananda) on 6&lt;sup&gt;th&lt;/sup&gt; March 2007. This list has also been shown to Mr. Rajeev Sharma and Mr. Rajesh Dubey at various times. For your reference I am listing down the issues once again, which fall under two broad categories. Please note that it is the list of issues that we are facing right now and needs to be addressed. It by no means can be termed as complete, as new issues may crop up from time to time.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol  style="margin-top: 0in;font-family:arial;" start="1" type="A"&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Construction      quality related issues&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;ol style="margin-top: 0in;" start="1" type="a"&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Wooden       floor in the Kids bedroom has bloated around the joints of the wooden       tiles.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;There       are remains of white paint on the wooden floor near the door of the       toilet in the Master bedroom&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;The       wooden lamination of the profile on the toilet door of the Master bedroom       has come out completely.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Wooden       skirting in master, kids and guest room is sticking out from the walls.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Seepage       in&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                              &lt;wbr&gt;   &lt;/span&gt;&lt;/span&gt;i.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Kids bedroom and toilet&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                               &lt;/span&gt;&lt;/span&gt;ii.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Master bedroom and toilet&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                              &lt;/span&gt;&lt;/span&gt;iii.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Kitchen&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                             &lt;/span&gt;&lt;/span&gt;iv.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Study and its toilet&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                               &lt;/span&gt;&lt;/span&gt;v.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Living room &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol  style="margin-top: 0in;font-family:arial;" start="1" type="A"&gt;&lt;ol style="margin-top: 0in;" start="6" type="a"&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Handle       of the main door of guest room has come out&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Cracks       have appeared in the walls of&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                              &lt;wbr&gt;   &lt;/span&gt;&lt;/span&gt;i.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Kids bedroom&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="margin-left: 1.5in; text-indent: -1.5in;font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;&lt;span&gt;&lt;span style="font-size:78%;"&gt;&lt;span&gt;                              &lt;wbr&gt;                               &lt;/span&gt;&lt;/span&gt;ii.&lt;span style="font-size:78%;"&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Master bedroom&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol  style="margin-top: 0in;font-family:arial;" start="1" type="A"&gt;&lt;ol style="margin-top: 0in;" start="8" type="a"&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Cracks       in WC of kids bathroom&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Services      related issues&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;ol style="margin-top: 0in;" start="1" type="a"&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;Water       quality: The water supply is either yellow or grayish black. It has such       a heavy amount of silt that the Zero-B engineer has suggested that the pre-filter       in the RO requires a change. Which is surprising as the RO was installed only       in last week of January 2007 and a typical pre-filter has a life of 1       year, even in Noida.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li  style="color:navy;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style=""&gt;The       maintenance office refused to accept our letter of complaint which I,       eventually, had to courier to you and which caused me to start this mail       thread. The reason that I got for not accepting the letter was that they       are not authorized to accept such letters. Which brings me to ask then       why they are here? If they cannot accept a letter of complaint regarding       the very complex which they are responsible for maintaining.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Hoping for an early response to this list,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Regards,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;Ruchir Agarwal&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style=";font-size:85%;color:navy;"  &gt;&lt;span style="color:navy;"&gt;GC2/002, Eldeco Ananda&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:85%;color:navy;"   &gt;&lt;span style=";font-family:Arial;color:navy;"  &gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div&gt;  &lt;div style="text-align: center;" align="center"&gt;&lt;span style=";font-family:Times New Roman;font-size:100%;"  &gt;&lt;span style="font-size:12;"&gt;  &lt;hr align="center" size="2" width="100%"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;span style="font-family:Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3477478276443047820?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3477478276443047820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3477478276443047820' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3477478276443047820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3477478276443047820'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/another-dead-email-chain.html' title='Another dead email chain'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8417315278258422582</id><published>2007-04-23T18:48:00.000+05:30</published><updated>2007-04-23T18:59:17.834+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Thank you readers</title><content type='html'>This post is for all the readers of this blog, who, time and again, have written to me sympathising with the problems we have faced with Eldeco. I wish to thank you all for your kindness, for the hope that good will finally overshadow evil, for the support of right versus wrong, for consumer activism and awareness, for quality consciousness and for using my experiences to make your own personal choices with respect to property purchase. I am grateful for your trust, and for your understanding. Thank you very much once again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8417315278258422582?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8417315278258422582/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8417315278258422582' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8417315278258422582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8417315278258422582'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/thank-you-readers.html' title='Thank you readers'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-5612697937753316832</id><published>2007-04-11T20:02:00.000+05:30</published><updated>2007-04-11T20:05:23.429+05:30</updated><title type='text'>Update: Eldeco and Pankaj Bajaj proves us right</title><content type='html'>No response from Eldeco today either to my letter to the Managing Director, which is published in &lt;a href="http://sonalgoyal.blogspot.com/2007/04/eldeco-and-pankaj-bajaj-prove-us-right.html"&gt;this post&lt;/a&gt;. Don't know how much time will Eldeco take to respond to an email.&lt;br /&gt;At least a confirmation of mail reciept could have been sent. That does take any time. Next time, I guess I have to send emails with read reciept enabled.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-5612697937753316832?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/5612697937753316832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=5612697937753316832' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5612697937753316832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5612697937753316832'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/update-eldeco-and-pankaj-bajaj-proves.html' title='Update: Eldeco and Pankaj Bajaj proves us right'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-5027889444463885547</id><published>2007-04-10T13:51:00.000+05:30</published><updated>2007-04-10T13:55:15.149+05:30</updated><title type='text'>Eldeco and Pankaj Bajaj prove us right.</title><content type='html'>&lt;table class="mhc" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td colspan="4" class="hv hw"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="cbrn"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="cbln"&gt;Email written to Pankaj Bajaj, MD Eldeco Housing and Constructions. As expected, no response.&lt;br /&gt;&lt;/td&gt;&lt;td colspan="2" class="hn"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="hp"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="4" class="hv hw"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="cbrn"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="cbln"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="2" class="hn"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="hp"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="4" class="hv hw"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="cbrn"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="cbln"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="2" class="hn"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="hp"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td colspan="4" class="hv hw"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;Dear Pankaj,&lt;br /&gt;&lt;br /&gt;Our patience has truly run out with Eldeco. This email is a measure of whether treating the  customers with apathy truly flows from the top.&lt;br /&gt;&lt;br /&gt;Lets see.&lt;br /&gt;Sonal&lt;script&gt;&lt;!-- D(["mb","\u003cdiv\&gt;\u003cdiv class\u003dea\&gt;\u003cspan id\u003de_111d73b75d7a1f77_1\&gt;- Show quoted text -\u003c/span\&gt;\u003c/div\&gt;\u003cspan class\u003de id\u003dq_111d73b75d7a1f77_1\&gt;\u003cbr\&gt;\u003cbr\&gt;---------- Forwarded message ----------\n\u003cbr\&gt;\u003cspan class\u003d\"gmail_quote\"\&gt;From: \u003cb class\u003d\"gmail_sendername\"\&gt;Agarwal, Ruchir\u003c/b\&gt; &lt;\u003ca href\u003d\"mailto:Ruchir_Agarwal@mentor.com\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;Ruchir_Agarwal@mentor.com\u003c/a\&gt;&gt;\u003cbr\&gt;Date: Apr 8, 2007 5:03 PM\u003cbr\&gt;Subject: Maintenance complaints at GC2-002, Eldeco Ananda, Noida\n\u003cbr\&gt;To: \u003ca href\u003d\"mailto:vishal@eldecoproperties.com\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;vishal@eldecoproperties.com\u003c/a\&gt;, \u003ca href\u003d\"mailto:sanjaysharma@eldecoproperties.com\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;sanjaysharma@eldecoproperties\u003cWBR\&gt;.com\u003c/a\&gt;\u003cbr\&gt;Cc: Sonal Goyal &lt;\u003ca href\u003d\"mailto:sonalgoyal4@gmail.com\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\"\&gt;\nsonalgoyal4@gmail.com\u003c/a\&gt;&gt;\u003cbr\&gt;\u003cbr\&gt;\u003c/span\&gt;\n\n\n\n\n\n\n\n\n\u003cdiv link\u003d\"blue\" vlink\u003d\"purple\" lang\u003d\"EN-US\"\&gt;\n\n\u003cdiv\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;Dear Vishal/Sanjay,\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;This is with respect to the list of grievances that we had\ngiven to Mr. Deepu, Estate Manager, on 6th March 2007. One of the items in the\nlist is the poor condition of the wooden floor in kid&amp;#39;s and master\nbedrooms. Since submission of the list, the condition of wooden flooring in both\nthe rooms has deteriorated. \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;We are concerned about the quality of material and\nworkmanship used in the flooring of these two rooms. Such poor material and\nwork is not expected from a reputed builder as yours and in a premium apartment\ncomplex as Ananda.\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;",1] );  //--&gt;&lt;/script&gt;&lt;div class="ea"&gt;&lt;span id="e_111d73b75d7a1f77_1"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="q" id="q_111d73b75d7a1f77_1"&gt;&lt;br /&gt;&lt;br /&gt;---------- Forwarded message ----------&lt;br /&gt;&lt;span class="gmail_quote"&gt;From: &lt;b class="gmail_sendername"&gt;Agarwal, Ruchir&lt;/b&gt; &lt;&lt;a href="mailto:Ruchir_Agarwal@mentor.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;Ruchir_Agarwal@mentor.com&lt;/a&gt;&gt;&lt;br /&gt;Date: Apr 8, 2007 5:03 PM&lt;br /&gt;Subject: Maintenance complaints at GC2-002, Eldeco Ananda, Noida&lt;br /&gt;To: &lt;a href="mailto:vishal@eldecoproperties.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;vishal@eldecoproperties.com&lt;/a&gt;, &lt;a href="mailto:sanjaysharma@eldecoproperties.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;sanjaysharma@eldecoproperties&lt;wbr&gt;.com&lt;/a&gt;&lt;br /&gt;Cc: Sonal Goyal &lt;&lt;a href="mailto:sonalgoyal4@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt; sonalgoyal4@gmail.com&lt;/a&gt;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;         &lt;div link="blue" vlink="purple" lang="EN-US"&gt;  &lt;div&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Dear Vishal/Sanjay,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;This is with respect to the list of grievances that we had given to Mr. Deepu, Estate Manager, on 6th March 2007. One of the items in the list is the poor condition of the wooden floor in kid's and master bedrooms. Since submission of the list, the condition of wooden flooring in both the rooms has deteriorated. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;We are concerned about the quality of material and workmanship used in the flooring of these two rooms. Such poor material and work is not expected from a reputed builder as yours and in a premium apartment complex as Ananda.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;&lt;script&gt;&lt;!-- D(["mb"," \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;When we bought the house we were apprehensive about the life\nand quality of proposed wooden flooring in the house. But were made to\nunderstand from Mr. Rajeev Sharma, with whom we interacted regarding our\npurchase, that there would be no issues whatsoever with the wooden flooring as\nthe material used is of high quality and that even if there were any issues\nthey will be taken care off by Eldeco. \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;Kindly let us know, at the earliest, by when we can expect a\nreplacement/fix of the wooden flooring in our house.\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;Thanking you,\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;Yours sincerely,\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;Ruchir Agarwal &amp; Sonal Goyal\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;GC2-002, Eldeco Ananda Apartments,\u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt;Sector 48, Noida. \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003cp\&gt;\u003cfont face\u003d\"Arial\" size\u003d\"2\"\&gt;\u003cspan style\u003d\"font-size:10pt;font-family:Arial\"\&gt; \u003c/span\&gt;\u003c/font\&gt;\u003c/p\&gt;\n\n\u003c/div\&gt;\n\n\u003c/div\&gt;\n\n\n\u003cbr clear\u003d\"all\"\&gt;\u003cbr\&gt;\u003c/span\&gt;\u003c/div\&gt;",1] );  //--&gt;&lt;/script&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;When we bought the house we were apprehensive about the life and quality of proposed wooden flooring in the house. But were made to understand from Mr. Rajeev Sharma, with whom we interacted regarding our purchase, that there would be no issues whatsoever with the wooden flooring as the material used is of high quality and that even if there were any issues they will be taken care off by Eldeco. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Kindly let us know, at the earliest, by when we can expect a replacement/fix of the wooden flooring in our house.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Thanking you,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Yours sincerely,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Ruchir Agarwal &amp; Sonal Goyal&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;GC2-002, Eldeco Ananda Apartments,&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Sector 48, Noida. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-5027889444463885547?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/5027889444463885547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=5027889444463885547' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5027889444463885547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/5027889444463885547'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/eldeco-and-pankaj-bajaj-prove-us-right.html' title='Eldeco and Pankaj Bajaj prove us right.'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8429258096096466981</id><published>2007-04-06T16:16:00.000+05:30</published><updated>2007-04-06T16:20:35.584+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Other blogs on Eldeco</title><content type='html'>Seems other harassed owners of Eldeco Ananda, duped by the false promises of the company and disillusioned by the service offered are airing their disappointment in their blogs. Check:&lt;br /&gt;&lt;a href="http://anurajsoni.blogspot.com/"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;span style=";font-family:Arial;font-size:10;color:black;"   &gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://anurajsoni.blogspot.com/" title="http://anurajsoni.blogspot.com/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://anurajsoni.blogspot.com/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://ruchir75.blogspot.com/"&gt;http://ruchir75.blogspot.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8429258096096466981?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8429258096096466981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8429258096096466981' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8429258096096466981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8429258096096466981'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/other-blogs-on-eldeco.html' title='Other blogs on Eldeco'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2809222822206295082</id><published>2007-04-04T12:20:00.000+05:30</published><updated>2007-04-04T12:32:31.378+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Apathy</title><content type='html'>If there is something called complete apathy, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Eldeco&lt;/span&gt; surely knows how to treat their customers with one. When I moved in, I noticed that the wooden laminated flooring of the kids' room was chipping off. The wooden tiles seem to have distanced from each other, and when I walk over, I have a sense of ground moving under my feet kind of feeling. Once I managed to get the estate manager to check the floor, he got the &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;workman&lt;/span&gt; from the flooring company who admitted that the floor was indeed badly laid out. They told me they will relay it. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Of course&lt;/span&gt;, gullible me believed! I had a visit again today by the higher authorities of the mighty &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Eldeco&lt;/span&gt; Constructions, the supposed engineer in charge. I think this is exactly one month after I submitted a written complaint after numerous verbal &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;compaints&lt;/span&gt;. Anyways, the engineer told me water had seeped in the floor, and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;of course&lt;/span&gt; how can water seep in? Surely we had been spilling water all over, and caused the floor to come to this condition. For one, I cant swim, so creating a swimming pool in the kids room is certainly not my idea of fun! I &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;dont&lt;/span&gt; even &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_7"&gt;wet mop&lt;/span&gt;, and my daughter, though small, is sufficiently toilet trained to not piss anywhere.  Also, we have covered the floor with all kinds of mats and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;durries&lt;/span&gt;, so only a little portion is visible and can get wet, if at all. However, the engineer feels that I have been &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;upto&lt;/span&gt; something with the floor, and is not ready to admit the poor quality.&lt;br /&gt;&lt;br /&gt;Thanks, it was better when you were not trying to pretend to help. To be accused of misuse in your own flat and told that this is the only flat where there is a problem with the wooden floor really gets on my nerves. Almost all my neighbours are facing similar issues with the wooden flooring. The rising prices in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;Noida&lt;/span&gt; may have led &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Eldeco&lt;/span&gt; and Mr &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;Pankaj&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;Bajaj&lt;/span&gt; to a huge profit, but if you &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;dont&lt;/span&gt; remember your base and hand out this treatment to your &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_15"&gt;customers&lt;/span&gt;, I am sure you will see the dust one day. Good luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2809222822206295082?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2809222822206295082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2809222822206295082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2809222822206295082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2809222822206295082'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/apathy.html' title='Apathy'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2399044540740346688</id><published>2007-04-04T12:13:00.000+05:30</published><updated>2007-04-04T16:20:04.683+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Eunuch racket</title><content type='html'>I opened the door in answer tot he doorbell, only to see two &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;eunuch&lt;/span&gt; smiling gleefully and asking for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;badhai&lt;/span&gt; - their term for extortion money of buying a new flat. I was shell shocked, I never expected &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;eunuch&lt;/span&gt; to be walking down the supposed secure building complex, right at my door and ringing the bell. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Ok&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Eldeco&lt;/span&gt; cant stop them, but at least I could have been informed on the intercom that they are visiting, just like other *guests* who come over. For other people, even my parents, the guards promptly stop them at the main door, call m up and confirm if I want &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;them&lt;/span&gt; to visit me. Only then they are allowed in. But seems &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Eldeco&lt;/span&gt; does not measure everyone with the same scale, and the &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_7"&gt;eunuch&lt;/span&gt; have a different setting with them.&lt;br /&gt;&lt;br /&gt;After major excuses, relentless bargains, I had to pay up 2100 Rs to them. So much for living in a fully &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;gated&lt;/span&gt; secure &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;Eldeco&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;Ananda&lt;/span&gt; Premium residential flats!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2399044540740346688?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2399044540740346688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2399044540740346688' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2399044540740346688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2399044540740346688'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/04/enunch-racket.html' title='Eunuch racket'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6951363262499306952</id><published>2007-03-12T11:22:00.000+05:30</published><updated>2007-04-04T16:20:29.358+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Funny</title><content type='html'>I was searching for something when I reached &lt;a href="http://timesofindia.indiatimes.com/articleshow/806170.cms"&gt;this &lt;/a&gt;promotion from Eldeco in the guise of a news item. According to the article, Mr Pankaj Bajaj from Eldeco says:&lt;br /&gt;&lt;br /&gt;"We screen buyers before selling them homes here so that our customers will have quality people living in their neighbourhood."&lt;br /&gt;&lt;br /&gt;How about doing some introspection and assessing the quality you are offering to your customers Mr Bajaj? Last heard, our resident's welfare association had requested some time to meet you personally. One week has passsed, you have not even acknowledged receipt of our request, let alone telling us when we can meet you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6951363262499306952?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6951363262499306952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6951363262499306952' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6951363262499306952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6951363262499306952'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/03/funny.html' title='Funny'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2947505482355380427</id><published>2007-03-11T23:28:00.000+05:30</published><updated>2007-03-12T11:10:14.166+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Eldeco marketing</title><content type='html'>I have had one of the most eye opening experiences of my life interacting with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Eldeco&lt;/span&gt; marketing. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Eldeco&lt;/span&gt;  has a number of projects in the  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;NCR&lt;/span&gt; - Delhi region and I expected &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Eldeco&lt;/span&gt; staff to be customer friendly. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;Eldeco&lt;/span&gt; is a listed company, and one kind of assumes that the marketing department will be smart and savvy. However, they are savvy and smart, but only for their own good, is what I realized once I had paid the booking amount and legally agreed to buy the flat ( or else &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;forefeit&lt;/span&gt; the booking amount).&lt;br /&gt;&lt;br /&gt;We did not want wooden flooring in any of the bedrooms, as we were not sure how it would work out in Indian conditions. Before booking, we were told by their sales person, that these are small and minor things, to be taken care of once we make up our mind about the flat. "You are paying for the flat, so what issue can the company have in extending the marble flooring of the drawing area to your bedrooms, especially when cost of both wooden and marble turns out same to the company. We are here to serve you mam". Of course, how simple it seemed. Alas, the story changed completely as soon as the booking got done.&lt;br /&gt;&lt;br /&gt;"We surely cant change our flats for each single customer. Else the project will never get delivered. Customizations are not possible. You are however free to change the flooring of the flat once you get the possession."  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Of course&lt;/span&gt; at our own cost. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Eldeco&lt;/span&gt; will not even give us rooms without any flooring and just reduce our time, effort and money of first removing their stuff and then replacing it with ours. Needless to say, the wooden flooring is rustling under my feet, maintenance is a big pain in the dusty areas of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;Noida&lt;/span&gt; and all complaints about the &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_9"&gt;peel offs&lt;/span&gt; lead to no result.&lt;br /&gt;&lt;br /&gt;Possession was to be given to us in April, but we got it only in August last week, and that too after a lot of hassles. Eventually, we had to agree to broken marble pieces in the drawing room, undulated walls and all kinds of poor construction issues, as we needed the possession of the flat to start our own woodwork. When we asked &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;Eldeco&lt;/span&gt; authorities to change the marble pieces that were broken, they told us that this could happen anytime, what would we do if the pieces broke after we took possession. They were not ready to change the marble, and if we insisted, they would replace it, but they would not make sure to match the replaced piece with the surrounding pattern. We gave up.&lt;br /&gt;&lt;br /&gt;Similarly for the front door. The margin of the front door was badly cracked. It took us almost 5 meetings with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Eldeco&lt;/span&gt; staff to get them to agree to change it.&lt;br /&gt;&lt;br /&gt;Registration was another harrowing experience. We paid up the registration amount in first week of May. It took &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;Eldeco&lt;/span&gt; about 5-6 months to get ready for the registration. We really hated the fact that they sat on our money all the while, refusing to listen to any pleas for getting the registration done. With a floating rate home saver loan account, it would have really &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_13"&gt;benefitted&lt;/span&gt; us to get our registration amount and pay it only when they really wanted to do the paper work. Another case of complete customer apathy.&lt;br /&gt;&lt;br /&gt;For the registration, we agreed to a date and time. Unfortunately, my daughter got down with measles. She was about 7 months at that time, and it was risky to take her to the crowded registrar office of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;NOIDA&lt;/span&gt;. I requested the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;Eldeco&lt;/span&gt; authorities to give us another date. It was something we really wanted to avoid, as registration was something which we wanted to get done as fast as possible. However, given &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;Nandini's&lt;/span&gt; condition, there was no choice. But, their point of contact was not ready to budge. He told us that the date of the registration had been printed in advance on the stamp papers, and the stamp papers can not be changed. Or, if we agreed to pay the stamp duty again - some 5.5 &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;lakhs&lt;/span&gt;, maybe it can be done. If the date is printed once, it cant be changed. I knew this was just his way of resisting our change request, so I requested again. Surely, if the date is printed and the person meets with an accident, will s/he need to get the papers printed again? The &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;Noida&lt;/span&gt; authorities, for all their &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_19"&gt;bureaucracy&lt;/span&gt;, can not be that foolish. After umpteen calls, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;Eldeco&lt;/span&gt; relented. Surely, when we went for the registration, we found that no date is even printed.&lt;br /&gt;&lt;br /&gt;Thanks Mr &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;Pankaj&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;Bajaj&lt;/span&gt;, honorary managing director of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;Eldeco&lt;/span&gt;, for choosing &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_24"&gt;such&lt;/span&gt; brilliant customer service representatives. Surely it is flowing from the top, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;isnt&lt;/span&gt; it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2947505482355380427?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2947505482355380427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2947505482355380427' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2947505482355380427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2947505482355380427'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/03/eldeco-marketing.html' title='Eldeco marketing'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2465845685301239897</id><published>2007-03-09T17:59:00.000+05:30</published><updated>2007-03-09T18:17:24.310+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='women'/><category scheme='http://www.blogger.com/atom/ns#' term='career'/><category scheme='http://www.blogger.com/atom/ns#' term='feminism'/><title type='text'>International Women's Day</title><content type='html'>I have never seen such media coverage of the International Women's Day. I think until the last few years, I did not even know that such a day existed, and got celebrated! Pardon my ignorance, but I still feel the culture of celebrating different kind of days - Valentine's, Father's, Mother's, AIDS, Women has a lot to do with the media. The special edition of Economic Times for the day was edited by 3 illustrious and noteworthy women. There were point of views from various &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;women&lt;/span&gt; from a cross section of society. It was a very good read, and I for one thanked god for having such a day full of lot of interesting reading material.&lt;br /&gt;&lt;br /&gt;Having said that, the day prompted me to think and ponder. Why just one day out of 365 - does that mean men rule the other 364 days? Well, I wont say I am necessarily hurt, but sorry man(and men), the question did pop up in my liberal mind. Again, as the day unfolded and I struggled to work from home, balance the needs of my child with the demands and aspirations of my career, a million questions kept knocking at my door. Is life really easier or tougher for the women today? With more and more choices and demands on the women, is emancipation truly what we asked for? Do we still have a decent corporate culture which allows women to work as &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;well&lt;/span&gt; as balance their roles as mothers and caregivers? Do corporates really care? Should corporates really care?&lt;br /&gt;&lt;br /&gt;What do I want - a &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;spic&lt;/span&gt; and span house which feels like no one lives here, &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;ultra&lt;/span&gt; clean kitchen which looks like nobody has ever cooked, an obedient child who lets me work when I want to, and showers me with love and affection and some naughtiness when I am free, a husband who prefers to help out in housework instead of watching television, a job where I get a good pay, with very challenging work, but with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;flexi&lt;/span&gt; timings and the ability to look after my kid while working from home?&lt;br /&gt;&lt;br /&gt;Could life really get simpler..or am I too demanding ?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2465845685301239897?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2465845685301239897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2465845685301239897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2465845685301239897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2465845685301239897'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/03/international-womens-day.html' title='International Women&apos;s Day'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7413176727998050587</id><published>2007-02-25T22:07:00.000+05:30</published><updated>2007-02-25T22:28:18.638+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>More on Eldeco</title><content type='html'>Found this post from a fellow sufferer on how Eldeco has cheated them&lt;br /&gt;&lt;a href="http://www.noidascoop.com/story/2006/8/28/2724/49006"&gt;http://www.noidascoop.com/story/2006/8/28/2724/49006&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is really disheartening to see how people have been taken for a ride by Eldeco. And all this is coming from a BSE listed company.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7413176727998050587?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7413176727998050587/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7413176727998050587' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7413176727998050587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7413176727998050587'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/02/more-on-eldeco.html' title='More on Eldeco'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-972400377087059797</id><published>2007-02-08T15:49:00.000+05:30</published><updated>2007-01-25T14:05:04.625+05:30</updated><title type='text'>Airtel sells my personal information</title><content type='html'>Its been less than two weeks since I got a new Airtel landline, and I am already receiving at least one call per day from different loan departments - car, house, personal, holiday and vacationing companies, Airtel itself for more connections, different schemes and promos. It is very annoying, especially if after half an hour of rocking I manage to put my little one to sleep, and the sound of the telphone ringing wakes her up and sends her into another crying spell. It is high time companies started respecting individual privacy. Mindless commercialization and disrespect for customer concern will surely not take you too far.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-972400377087059797?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/972400377087059797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=972400377087059797' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/972400377087059797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/972400377087059797'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/02/airtel-sells-my-personal-information.html' title='Airtel sells my personal information'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7468030362246506550</id><published>2007-01-25T13:56:00.000+05:30</published><updated>2007-02-25T22:28:46.206+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Pathetic customer service from Eldeco</title><content type='html'>I have stressed in my previous posts about the problems faced by residents of Eldeco Ananda. I have moved in to the apartment block, and I realize there is a lot more to add to the list. Here are the big issues:&lt;br /&gt;&lt;br /&gt;1. Eldeco has a power backup facility, where a diesel generator powers the complex when the main power goes off. Needless to say, the power backup running cost is about 3 times that of normal power. Which is fine. However, what is suspicious is that there is no way of knowing when the power is coming directly and when it is backed up, so there is simply no way you can control the bills. Good planning Eldeco to keep your coffers filling. Requests to know the charging rationale ofcourse falls to deaf ears.&lt;br /&gt;&lt;br /&gt;2. The flat above mine is doing some renovation, and there is big seepage into my house. I requested the Eldeco authorities, who are caretakers and complex society guardians, to look into the matter. I am told it is my problem.&lt;br /&gt;&lt;br /&gt;3. No water in kitchen for 3 days.&lt;br /&gt;&lt;br /&gt;4. No greenery yet&lt;br /&gt;&lt;br /&gt;5. Eldeco had charged us about Rs 25000 for electricity connection. However, we have not been given individual connections. There is one big connection for the complete building and sub meters to our individual flats. Who is paying for the usage by Eldeco authorities during construction and maintenence is anybody's guess.&lt;br /&gt;&lt;br /&gt;You still want to buy something from Eldeco? Braveheart!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7468030362246506550?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7468030362246506550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7468030362246506550' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7468030362246506550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7468030362246506550'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/01/pathetic-customer-service-from-eldeco.html' title='Pathetic customer service from Eldeco'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6572870677853624598</id><published>2007-01-14T20:59:00.000+05:30</published><updated>2007-02-25T22:26:54.041+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Eldeco Ananda, the biggest scam of all</title><content type='html'>I am terribly disappointed with the service and quality of Eldeco's Constructions. I own a flat in Eldeco Properties' premium housing project in Noida, NCR - Ananda. Ever since we have got the possession of the apartment it is a continuosly painful exercise to get the basic amenities from Eldeco. It is very disheartening to be promised dreams and then lacking in delivery of the basics. From the outright, the possession of the flat was delayed, without any intimations and reasons given to the buyers. On possession, we noticed broken marble slabs in the drawing room, and the engineer in charge refused to change them. Its been six months since we took possession, and one of the bathrooms still does not have the towel rods. The promised swimming pool has turned out to be small little water body. Greenery is non existent. On top of it, the security leaves so much to be desired. Enunch walk into the complex, and demand their extortion fee, taking as much as 11k with them. I have heard that Eldeco has now negotiated the rate with the enunch gang as 2500 Rs, and we will get a receipt!!!&lt;br /&gt;&lt;br /&gt;Eldeco authorities are the most customer unfriendly, they treat you as scums and do not care a word of what you say and request.&lt;br /&gt;&lt;br /&gt;God save me, I am really shuddering from the thought of moving in next week..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6572870677853624598?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6572870677853624598/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6572870677853624598' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6572870677853624598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6572870677853624598'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2007/01/eldeco-ananda-biggest-scam-of-all.html' title='Eldeco Ananda, the biggest scam of all'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3475638859613544070</id><published>2006-12-30T17:51:00.000+05:30</published><updated>2006-12-30T17:56:21.481+05:30</updated><title type='text'>Everyman's story</title><content type='html'>Barkha Dutt in her editorial column in Hindustan Times discusses how the mobile phone has become a symbol of middle class activism. People can now sms and voice their opinions. She welcomes such gestures, as according to her, these empower the otherwise passive junta. Read full article &lt;a href="http://hindustantimes.com/news/181_1883296,00120001.htm"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;She should know, ofcourse. As Managing Editor of NDTV, a big pie of the channel's profits come from the SMS revenue generated on mindless topics - Should Abhishek marry Aishwarya? Who will be the lead wicket taker in xx test? &lt;br /&gt;&lt;br /&gt;Middle class activism. Thanks!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3475638859613544070?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3475638859613544070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3475638859613544070' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3475638859613544070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3475638859613544070'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/everymans-story.html' title='Everyman&apos;s story'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2594040644271107486</id><published>2006-12-30T17:35:00.000+05:30</published><updated>2006-12-30T17:44:58.665+05:30</updated><title type='text'>Saddam executed</title><content type='html'>Saddam Hussain finally got hanged today. President Bush calls it an important milestone on the road to building Iraqi democracy. &lt;a href="http://hindustantimes.com/news/181_1883506,00050004.htm"&gt;Saddam execution important milestone: Bush&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I would say it is a clear signal to anyone who stands against the American economy of wars and oil wells. History is written by the victor, and Saddam will go down as a threat to the freedom and democracy of Iraqis, a person who amassed weapons of mass destruction, who was a threat to global peace and existence and who indirectly supported terror groups. &lt;br /&gt;&lt;br /&gt;Who dare raise voices against the mighty Americans? Who dare stop them from capturing foreign soil in quest of black gold? Who dare suggest their economics of terror, of first destroying countries and then sending their own companies under the garb of rehabilitation and construction? &lt;br /&gt;&lt;br /&gt;We are a global world, committed to free spirit and democracy, arent we? So what if only the sound of the dollar gets heard? Long live the king!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2594040644271107486?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2594040644271107486/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2594040644271107486' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2594040644271107486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2594040644271107486'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/saddam-executed.html' title='Saddam executed'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6020448898173932503</id><published>2006-12-28T20:27:00.000+05:30</published><updated>2006-12-28T20:30:35.780+05:30</updated><title type='text'>Opentable</title><content type='html'>Just discovered a service &lt;a href="http://opentable.com/"&gt;http://opentable.com/&lt;/a&gt; for making restaurant reservations. The site claims to be free, instant and reliable. wonder if there is anything like this for Noida/Delhi/Gurgaon region. Also on similar lines, the struggle for cinema tickets makes me wish for a similar site linking all theatres in the region, with ticket availability, show timings, seat preferences and maybe even ordering popcorn in advance. Santa, are you listening? :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6020448898173932503?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6020448898173932503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6020448898173932503' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6020448898173932503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6020448898173932503'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/opentable.html' title='Opentable'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-1537496794827213655</id><published>2006-12-27T18:56:00.000+05:30</published><updated>2006-12-27T19:01:31.283+05:30</updated><title type='text'>New Year will not be the same again..</title><content type='html'>Was casually flipping the newspaper pages which had major coverage on all the planned festivities and celebrations. However, there were some articles on the tsunami victims,  for whom New Year brings a flurry of sad memories, thoughts of lost loved ones, harsh reality checks of rehabilitation programs, the horror and the trauma. With all the scars, will it ever be the same again for them?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-1537496794827213655?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/1537496794827213655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=1537496794827213655' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1537496794827213655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1537496794827213655'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/new-year-will-not-be-same-again.html' title='New Year will not be the same again..'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-1242460475677593924</id><published>2006-12-22T19:59:00.000+05:30</published><updated>2006-12-22T20:01:04.754+05:30</updated><title type='text'>Hail Delhi!</title><content type='html'>According to a study done by Forbes on the densest cities in India, Delhi is supposedly much better as compared to Mumbai, Kolkatta, Hyderabad and even Bangalore. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.forbes.com/2006/12/19/india-congested-cities-biz-energy-cx_rm_1219congested_slide_6.html?thisSpeed=6000"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-1242460475677593924?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/1242460475677593924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=1242460475677593924' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1242460475677593924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1242460475677593924'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/hail-delhi.html' title='Hail Delhi!'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-6871738615675716692</id><published>2006-12-19T23:16:00.000+05:30</published><updated>2006-12-19T23:17:50.645+05:30</updated><title type='text'>Windows End Task</title><content type='html'>Dear Mr Gates,&lt;br /&gt;&lt;br /&gt;If End task is not intended to show up immediately or end the task most of the times, why not just remove the dumb button?&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;Sonal&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-6871738615675716692?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/6871738615675716692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=6871738615675716692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6871738615675716692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/6871738615675716692'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/windows-end-task.html' title='Windows End Task'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-1929330551578404472</id><published>2006-12-16T21:09:00.000+05:30</published><updated>2006-12-20T15:19:54.381+05:30</updated><title type='text'>Telecommuting</title><content type='html'>After a six month stint at telecommuting, I think it may be worthwhile to pen down some posts on the subject. The benefits, the downsides, how to go about it, the approach that worked for me, lessons learnt etc. So the next few posts are going to deal with telecommuting. Keep watching.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-1929330551578404472?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/1929330551578404472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=1929330551578404472' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1929330551578404472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1929330551578404472'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/12/telecommuting.html' title='Telecommuting'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2984051698824579394</id><published>2006-11-29T13:48:00.000+05:30</published><updated>2006-11-29T13:54:25.975+05:30</updated><title type='text'>No Answers From Google</title><content type='html'>Google has announced the end to Google Answers, a service where people could ask questions and subscribed experts would search the net and answer. &lt;a href="http://googleblog.blogspot.com/2006/11/adieu-to-google-answers.html"&gt;Adieu to Google Answers&lt;/a&gt; However, I am surprised at the blog, which mentions how quickly college grads made the service, what all they learnt and what an experiment it was. However, no reason as to the closure of the service is mentioned. What made Google close this? How successful was the experiment? Were there any attempts made to rejuvenate the service? Questions, questions... answers anyone?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2984051698824579394?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2984051698824579394/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2984051698824579394' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2984051698824579394'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2984051698824579394'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/no-answers-from-google.html' title='No Answers From Google'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-306160702383096709</id><published>2006-11-28T12:45:00.001+05:30</published><updated>2006-11-28T12:45:40.457+05:30</updated><title type='text'>MPs demand no payment to cricketers for bad showing</title><content type='html'>I agree with the views posted in &lt;a href="http://chauka.blogspot.com/2006/11/joke-continues-how-dare-chappell-utter.html#links"&gt;Chauka!&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;It is suprising that MPs are demanding that the cricketers not be paid for their dismal show in South Africa. How about applying the same rule to the performance of our dear parliamentarians? Any MP game for a performance linked constituency allowance? ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-306160702383096709?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/306160702383096709/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=306160702383096709' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/306160702383096709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/306160702383096709'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/mps-demand-no-payment-to-cricketers-for.html' title='MPs demand no payment to cricketers for bad showing'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2811638777766193279</id><published>2006-11-27T13:20:00.000+05:30</published><updated>2006-11-27T13:24:24.229+05:30</updated><title type='text'>Casino Royale</title><content type='html'>Watched Casino Royale and simply loved it. The movie has all the necessary ingredients - emotion, drama, action, romance, interesting climax. Worth watching.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2811638777766193279?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2811638777766193279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2811638777766193279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2811638777766193279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2811638777766193279'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/casino-royale.html' title='Casino Royale'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-7142561948057111129</id><published>2006-11-25T19:25:00.000+05:30</published><updated>2006-12-20T23:19:46.485+05:30</updated><title type='text'>Interesting blog discovered</title><content type='html'>Thanks to publishing my details on Skype, I got unusual friendship messages and contact  details requests. One gentleman called Satya even called me up, saying all sorts of weird things. I have wisened up, thanks and have promptly removed all possible details.  As if all the calls from the various financial institutions for all kinds of personal/home/car loans/credit cards and insurance policies was not enough!&lt;br /&gt;&lt;br /&gt;It bugged me so much, I started searching google for "skype loss of privacy" which led me to &lt;a href="http://pogue.blogs.nytimes.com/"&gt;http://pogue.blogs.nytimes.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Interesting blog. &lt;br /&gt;&lt;br /&gt;Finally, negativity transformed to something positive.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-7142561948057111129?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/7142561948057111129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=7142561948057111129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7142561948057111129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/7142561948057111129'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/interesting-blog-discovered.html' title='Interesting blog discovered'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-2917071104393738814</id><published>2006-11-25T16:07:00.000+05:30</published><updated>2006-11-25T16:28:40.521+05:30</updated><title type='text'>Rift between Chappell and Dravid, Vengsarkar to intervene</title><content type='html'>Yesterday NDTV proclaimed a "breaking news" with a program on the rift between Rahul Dravid and Greg Chappell, as apparently Chappell had sent Dravid for batting at a position at which he did not wish to bat. India lost dismally.&lt;br /&gt;&lt;br /&gt;I am amazed at the growing sensationalism promoted by the leading news channels. We understand that we are a cricket crazy nation, however, all the spicing up of anything and everything connected with cricket is really stretching too far. The coach and the captain are professionals good at their job. It is true that they are not able to garner a respectable win for the team currently. However, I am very doubtful that they have even forgotten their core  roles and responsiblities. The NDTV correspondents seem to have little understanding of team structures and dynamics, if they have come up with a program like this. &lt;br /&gt;&lt;br /&gt;It is NOT the coach's job to decide the captain's batting slot, let alone govern the order for the entire side. And I am sure given the current form of Indian players, the coach has more than his share of work to do, leave behind the batting order! Also, the captain may take suggestions, but the final decision is HIS prerogative. &lt;br /&gt;&lt;br /&gt;There are four possible cases here:&lt;br /&gt;1. Chappell suggests something and Rahul agrees.&lt;br /&gt;2. Chappell does not suggest, Rahul does as he feels correct.&lt;br /&gt;3. Chappell suggests, Rahul disagrees.&lt;br /&gt;4. Chappell does not suggest, Rahul does not suggest. No change.&lt;br /&gt;&lt;br /&gt;So, let us assume that Chappell indeed suggested the place for Dravid. There is no way he could have forced Dravid, so Dravid must have agreed. Now, can any sensible person agree and then come back and blame? (From what we have seen of Rahul Dravid, we can grant him this much understanding at least, cant we countrymen?)&lt;br /&gt;&lt;br /&gt;Now, let us take another scenario. Suppose Chappell did not suggest the place but Rahul went for it nevertheless. So, now, is there any reason for the supposed rift?&lt;br /&gt;&lt;br /&gt;Or, let us take the third case. Chappell suggested some place and Rahul did not agree. Surely, then the captain did as he felt like and again there is no reason for a rift.&lt;br /&gt;&lt;br /&gt;Also, let us also stretch our imagination wild and assume, just like our dear NDTV correspondents, that the two did have a disagreement on some batting order. Now, will they tell NDTV? Will Vengsarkar tell NDTV? If it was a big showdown disagreement, it would have been in the papers anyways. And if it was not, why waste prime time news slots on juicy aunty gossips?&lt;br /&gt;&lt;br /&gt;GROW UP GUYS.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-2917071104393738814?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/2917071104393738814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=2917071104393738814' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2917071104393738814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/2917071104393738814'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/rift-between-chappell-and-dravid.html' title='Rift between Chappell and Dravid, Vengsarkar to intervene'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-313850467936480106</id><published>2006-11-25T13:00:00.000+05:30</published><updated>2006-11-25T13:02:45.343+05:30</updated><title type='text'>Sensible defaults</title><content type='html'>I agree with &lt;a href="http://discuss.joelonsoftware.com/default.asp?joel.3.418959.1"&gt;Jason&lt;/a&gt;. The advanced features must be available, however, the UI should be designed in such a manner that sensible defaults are available to the beginner and the intermediate users.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-313850467936480106?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/313850467936480106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=313850467936480106' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/313850467936480106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/313850467936480106'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/sensible-defaults.html' title='Sensible defaults'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8119523824358162786</id><published>2006-11-10T18:54:00.001+05:30</published><updated>2006-11-10T18:57:00.908+05:30</updated><title type='text'>Best career for women ?</title><content type='html'>It  have heard from a lot of people thathe teaching profession is the best profession for females. Teaching in a university is often looked at as the best way to balance family  and employment. The apparent less hours demanded of a university teacher make the profession lucrative, especially for a mother with young kids. Somehow, I disagree and I feel strongly that for building any career, there is no shortcut. If one wants to have just a nice cushiony job and the feeling that one is employed, any option is fine. However, if one is interested in building a career, one has to invest the time and the energy for it. Even in teaching, if one wishes to excel, one will need to spend considerable time in learning and exploring, research and industrial projects. Sure, there may be a way out when one just teaches by rote and devotes a couple of hours every week and gets away with it by still being able to draw salary. But I am not sure if this is leading to a teacher whom students look upto and who is an expert in her field.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8119523824358162786?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8119523824358162786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8119523824358162786' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8119523824358162786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8119523824358162786'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/best-career-for-women.html' title='Best career for women ?'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-429252223443609233</id><published>2006-11-07T13:43:00.000+05:30</published><updated>2006-11-07T13:44:31.352+05:30</updated><title type='text'>Guarding against SQL injection</title><content type='html'>Just read &lt;a href="http://www.joelonsoftware.com/items/2006/11/01.html"&gt;What's a SQL Injection Bug?&lt;/a&gt;. I think we need to update our code review guidelines to ensure this is not happening.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-429252223443609233?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/429252223443609233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=429252223443609233' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/429252223443609233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/429252223443609233'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/guarding-against-sql-injection.html' title='Guarding against SQL injection'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-8886329491097249962</id><published>2006-11-06T20:07:00.000+05:30</published><updated>2007-03-09T18:16:43.195+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Ananda final round</title><content type='html'>Final set of activities under progress in the new house, kitchen tidbits, paint, wrap up of the woodwork. Long list of items still to cover - electrical fittings, registration, curtains...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-8886329491097249962?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/8886329491097249962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=8886329491097249962' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8886329491097249962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/8886329491097249962'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/11/ananda-final-round.html' title='Ananda final round'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-3671791193420371219</id><published>2006-10-24T18:28:00.000+05:30</published><updated>2006-10-24T18:34:09.881+05:30</updated><title type='text'>Welcome to Delhi</title><content type='html'>After all the Diwali celebrations, reached back Delhi by Shram Shakti Express. No mishaps with the train thankfully, unlike our to journey. But, greater surprises (and shcoks) lay in store. No autorickshaw is ready to go to Noida! (a few may oblige, and all they ask is a measly 200 Rs for 16 kms, fair, eh?) Taxis are Rs 550, I did not know petrol is so costly. If I take a prepiad, I will be stranded with the receipt, no autorickshaw is ready to seat us. The policeman on duty is not too helpful, his suggestion is to pay the autowallah his due(madam, be practical or take a bus!). Finally we take a bus. Thanks!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-3671791193420371219?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/3671791193420371219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=3671791193420371219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3671791193420371219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/3671791193420371219'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/10/welcome-to-delhi.html' title='Welcome to Delhi'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-1273129399143628933</id><published>2006-10-24T18:22:00.000+05:30</published><updated>2006-10-24T18:28:38.369+05:30</updated><title type='text'>Travel to Kanpur</title><content type='html'>We planned a family get-together in Kanpur for Diwali. booked tickets by Rewa Express whcih leaves New Delhi Railway Station close to 11.30 PM. Reached station at 11 PM, only to realize that the train would leave at 1.20 PM. Spent a tough two hours at the waiting room, which was completely packed(overflowing, people on the floors..). Finally reached the platform to realize that Rewa would not be going to Kanpur at all! Ludicrous, what happened to all the announcement systems of the railways??? Finally came to know of a train at 3.30 PM which would go to Kanpur. Beged and pleaded with the ticket collectors to give us a berth, but of course, everything was jam packed. Finally, managed to climb in the train, sat on a side berth(all three of us). Luckily, the berth owner did not show up! Reached Kanpur at 9.30AM next day! Finally, holidays begin....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-1273129399143628933?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/1273129399143628933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=1273129399143628933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1273129399143628933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/1273129399143628933'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/10/travel-to-kanpur.html' title='Travel to Kanpur'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115850312759001230</id><published>2006-09-17T19:49:00.000+05:30</published><updated>2007-03-09T18:15:30.632+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><title type='text'>Pyaar Ke Side Effects</title><content type='html'>Watched Pyaar Ke Side Effects starring Rahul Bose and Mallicka Shehrawat. Really enjoyed the movie. The acting is nice, script crisp, no boring songs hampering the progress of the movie. Overall slick direction and good dialogues. Content is adult comedy, so maybe you want to leave your kids behind.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115850312759001230?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115850312759001230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115850312759001230' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115850312759001230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115850312759001230'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/09/pyaar-ke-side-effects.html' title='Pyaar Ke Side Effects'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115805419639387898</id><published>2006-09-12T15:11:00.000+05:30</published><updated>2006-09-12T16:40:13.853+05:30</updated><title type='text'>Lets discover telecommuting..</title><content type='html'>I posted a question on &lt;a href="http://discuss.joelonsoftware.com/default.asp?joel.3.388574.1"&gt;JoelOnSoftware&lt;/a&gt; to see what the good ole programmers feel about my options. Hoping for some insights.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115805419639387898?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115805419639387898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115805419639387898' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115805419639387898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115805419639387898'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/09/lets-discover-telecommuting.html' title='Lets discover telecommuting..'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115799722066288471</id><published>2006-09-11T23:20:00.000+05:30</published><updated>2007-04-04T16:23:39.892+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sports'/><category scheme='http://www.blogger.com/atom/ns#' term='tennis'/><title type='text'>Fed ROCKS!!</title><content type='html'>Another great win, another title match won comfortably! Roger Federer demonstrates his prowess and sheer talent to dominate the US Open - third time in a row.&lt;br /&gt;&lt;br /&gt;I am not sure what it feels to be so good and to know it. But I am sure Tiger Woods and Roger Federer must have a lot of common sentiments.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sports.yahoo.com/ten/news;_ylt=A0LaSgJZwvdEfXABEwY4v7YF?slug=ap-usopen&amp;prov=ap&amp;amp;type=lgns"&gt;With Tiger watching, Federer has slammin' time at Open&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115799722066288471?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115799722066288471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115799722066288471' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115799722066288471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115799722066288471'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/09/fed-rocks.html' title='Fed ROCKS!!'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115730973335082725</id><published>2006-09-04T00:21:00.000+05:30</published><updated>2006-09-04T00:25:33.360+05:30</updated><title type='text'>End of an era</title><content type='html'>Andre Agassi crashed out of the US Open, bringing to an end his long and glorious career. The champion cried for a long time, the centre court gave him standing ovation. It was indeed very touching to see him play his last match for good. &lt;br /&gt;&lt;br /&gt;Good luck Andre, you stay a champ! Adieu.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115730973335082725?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115730973335082725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115730973335082725' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115730973335082725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115730973335082725'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/09/end-of-era.html' title='End of an era'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115635585238621521</id><published>2006-08-23T23:16:00.000+05:30</published><updated>2007-04-04T16:21:21.859+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='women'/><category scheme='http://www.blogger.com/atom/ns#' term='career'/><category scheme='http://www.blogger.com/atom/ns#' term='feminism'/><title type='text'>Women at the top?</title><content type='html'>IBM has recently announced that it is lowering the entry criteria for women, so that more women can get employed and help balance the sex ratio within the company.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://timesofindia.indiatimes.com/articleshow/1917370.cms"&gt;What IBM wants: Women at the top&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am not sure what the motives are, but I am assuming that IBM is looking at creating cross functional teams with diverse mindsets, a team building approach much preached by the management gurus of all ages. However, I am not sure if lowering the bar is going to help better the culture and team spirit in the company. Unless the merits and motives of a gender balanced workforce are understood by the majority of the employees, it is going to irk the existing workforce. The life of deserving female candidates is going to get tougher, as they will be under constant scrutiny and judgement by their male colleagues. They may have to prove each career advancement far more, and carry the brunt of the disgruntled workforce.&lt;br /&gt;&lt;br /&gt;I personally feel that women in engineering (and other professionas where they are outnumbered by the men) face a daunting challenge of constant assessment by everyone around. I just hope things do not get tough for the truly deserving female candidates and they do not have to prove at every step of their employment tenure that they deserve to be in. I hope the organization has educated its employees on the need for a diverse group and they do not develop a negative mindset towards their female counterparts.&lt;br /&gt;&lt;br /&gt;Having said that, I really feel that lowering the bar is not the solution. It is more like a quick fix. It discourages merit, and promotes inequality. Encouragement has to happen in terms of a better culture and work-life balance for female employees.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115635585238621521?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115635585238621521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115635585238621521' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115635585238621521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115635585238621521'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/08/women-at-top.html' title='Women at the top?'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115557754558974263</id><published>2006-08-14T22:06:00.000+05:30</published><updated>2007-09-25T16:55:17.054+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Technical'/><category scheme='http://www.blogger.com/atom/ns#' term='Berkeley DB'/><title type='text'>FLWOR with Berkeley DB XML</title><content type='html'>FLWOR (pronounced Flower) stands for "for let while order by return" and is and XQuery expression. FLWOR enables advanced querying. More details about&lt;br /&gt;FLWOR can be found at &lt;a href="http://www.w3schools.com/xquery/xquery_flwor.asp"&gt;http://www.w3schools.com/xquery/xquery_flwor.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://dev.sleepycat.com/documentation/bdbxml.html"&gt;Sleepycat's Berkeley's XML Database&lt;/a&gt;, DB XML the native XML database supports XQuery. I have tried to create a small example here to demonstrate how to read XQuery with FLWOR expressions from a file, and run them against the database of Berkeley DBs dbxml container.(the one built in the 'gettingStarted' section) It is assumed that the xml sample data from the getting started kit has been loaded.&lt;br /&gt;&lt;br /&gt;Set your classpath to include the Berkley DB jars under jar folder&lt;br /&gt;(db.jar, dbxml.jar, dbexamples.jar)&lt;br /&gt;&lt;br /&gt;The code can be found here.&lt;br /&gt;&lt;br /&gt;1. query.txt file, which holds the query.&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br /&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br/&gt;&lt;br /&gt;for $doc in collection(\'simpleExampleData.dbxml\')&lt;br /&gt;&lt;br /&gt;    where $doc/product/item[text()=\&amp;quot;Lemon Grass\&amp;quot;]&lt;br /&gt;&lt;br /&gt;    return $doc/product&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;2. FLWOR.java file, which holds the code.&lt;br /&gt;&lt;div style="overflow:scroll;"&gt;&lt;br /&gt;&lt;pre style="font-size:90%;color:#009000;"&gt;&lt;br/&gt;&lt;br /&gt;import&amp;nbsp;java.io.*;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;com.sleepycat.dbxml.*;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;com.sleepycat.db.*;&lt;br /&gt;&lt;br /&gt;import&amp;nbsp;dbxml.gettingStarted.*;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public&amp;nbsp;class&amp;nbsp;FLWOR&amp;nbsp;{&lt;br /&gt;&lt;br /&gt; &amp;nbsp;private&amp;nbsp;static&amp;nbsp;void&amp;nbsp;usage()&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  String&amp;nbsp;usageMessage&amp;nbsp;=&amp;nbsp;\&amp;quot;\\nThis&amp;nbsp;program&amp;nbsp;performs&amp;nbsp;queries&amp;nbsp;against&amp;nbsp;a&amp;nbsp;DBXML&amp;nbsp;container.\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;You&amp;nbsp;should&amp;nbsp;run&amp;nbsp;exampleLoadContainer&amp;nbsp;before&amp;nbsp;running&amp;nbsp;this&amp;nbsp;example.\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;You&amp;nbsp;are&amp;nbsp;only&amp;nbsp;required&amp;nbsp;to&amp;nbsp;pass&amp;nbsp;this&amp;nbsp;command&amp;nbsp;the&amp;nbsp;path&amp;nbsp;location&amp;nbsp;of&amp;nbsp;the&amp;nbsp;database\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;environment&amp;nbsp;that&amp;nbsp;you&amp;nbsp;specified&amp;nbsp;when&amp;nbsp;you&amp;nbsp;loaded&amp;nbsp;the&amp;nbsp;examples&amp;nbsp;data:\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;&amp;nbsp;and&amp;nbsp;the&amp;nbsp;query&amp;nbsp;file&amp;nbsp;which&amp;nbsp;holds&amp;nbsp;the&amp;nbsp;query\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;\\t-h&amp;nbsp;&amp;lt;dbenv&amp;nbsp;directory&amp;gt;&amp;nbsp;-q&amp;nbsp;&amp;lt;queryFile&amp;gt;\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;For&amp;nbsp;example:\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  usageMessage&amp;nbsp;+=&amp;nbsp;\&amp;quot;\\tjava&amp;nbsp;ch.inform.bdb.FLWOR&amp;nbsp;-h&amp;nbsp;examplesEnvironment&amp;nbsp;-q&amp;nbsp;query.txt\\n\&amp;quot;;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  System.out.println(usageMessage);&lt;br /&gt;&lt;br /&gt;  System.exit(&amp;nbsp;-1&amp;nbsp;);&lt;br /&gt;&lt;br /&gt; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;//Utility&amp;nbsp;function&amp;nbsp;to&amp;nbsp;clean&amp;nbsp;up&amp;nbsp;objects,&amp;nbsp;exceptions&amp;nbsp;or&amp;nbsp;not,&lt;br /&gt;&lt;br /&gt; &amp;nbsp;//&amp;nbsp;containers&amp;nbsp;and&amp;nbsp;environments&amp;nbsp;must&amp;nbsp;be&amp;nbsp;closed.&lt;br /&gt;&lt;br /&gt; &amp;nbsp;private&amp;nbsp;static&amp;nbsp;void&amp;nbsp;cleanup(myDbEnv&amp;nbsp;env,&amp;nbsp;XmlContainer&amp;nbsp;openedContainer)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  try&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(openedContainer&amp;nbsp;!=&amp;nbsp;null)&lt;br /&gt;&lt;br /&gt;   openedContainer.close();&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(env&amp;nbsp;!=&amp;nbsp;null)&lt;br /&gt;&lt;br /&gt;   env.cleanup();&lt;br /&gt;&lt;br /&gt;  }&amp;nbsp;catch&amp;nbsp;(Exception&amp;nbsp;e)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;ignore&amp;nbsp;exceptions&amp;nbsp;on&amp;nbsp;close&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;public&amp;nbsp;static&amp;nbsp;void&amp;nbsp;main(String&amp;nbsp;args[])&lt;br /&gt;&lt;br /&gt;  throws&amp;nbsp;Throwable&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  String&amp;nbsp;theContainer&amp;nbsp;=&amp;nbsp;null;&lt;br /&gt;&lt;br /&gt;  File&amp;nbsp;path2DbEnv&amp;nbsp;=&amp;nbsp;null;&lt;br /&gt;&lt;br /&gt;  File&amp;nbsp;queryFile&amp;nbsp;=&amp;nbsp;null;&lt;br /&gt;&lt;br /&gt;  for(int&amp;nbsp;i&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;i&amp;nbsp;&amp;lt;&amp;nbsp;args.length;&amp;nbsp;++i)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(args[i].startsWith(\&amp;quot;-\&amp;quot;))&amp;nbsp;{&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;switch(args[i].charAt(1))&amp;nbsp;{&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; case&amp;nbsp;\'h\':&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;   path2DbEnv&amp;nbsp;=&amp;nbsp;new&amp;nbsp;File(args[++i]);&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;   break;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; case&amp;nbsp;\'q\':&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;   queryFile&amp;nbsp;=&amp;nbsp;new&amp;nbsp;File(args[++i]);&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;   break;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; default:&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;   usage();&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; }//switch&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}//if&lt;br /&gt;&lt;br /&gt;  }//for&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  if&amp;nbsp;(path2DbEnv&amp;nbsp;==&amp;nbsp;null&amp;nbsp;||&amp;nbsp;!&amp;nbsp;path2DbEnv.isDirectory())&amp;nbsp;{&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;usage();&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;  if&amp;nbsp;(queryFile&amp;nbsp;==&amp;nbsp;null&amp;nbsp;||&amp;nbsp;queryFile.isDirectory())&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;   System.out.println(\&amp;quot;queryFile&amp;nbsp;is&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;queryFile);&lt;br /&gt;&lt;br /&gt;   usage();&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;  //Stream&amp;nbsp;to&amp;nbsp;read&amp;nbsp;file&lt;br /&gt;&lt;br /&gt;  BufferedReader&amp;nbsp;fin;  &lt;br /&gt;&lt;br /&gt;  String&amp;nbsp;query&amp;nbsp;=&amp;nbsp;\&amp;quot;\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  try&lt;br /&gt;&lt;br /&gt;  {&lt;br /&gt;&lt;br /&gt;   fin&amp;nbsp;=&amp;nbsp;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new&amp;nbsp;BufferedReader(new&amp;nbsp;FileReader(queryFile));&lt;br /&gt;&lt;br /&gt;   String&amp;nbsp;line;&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while&amp;nbsp;((line&amp;nbsp;=&amp;nbsp;fin.readLine())&amp;nbsp;!=&amp;nbsp;null&amp;nbsp;)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; query&amp;nbsp;+=&amp;nbsp;\&amp;quot;\\n\&amp;quot;&amp;nbsp;+&amp;nbsp;line;&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Close&amp;nbsp;our&amp;nbsp;input&amp;nbsp;stream&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fin.close();  &lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  //&amp;nbsp;Catches&amp;nbsp;any&amp;nbsp;error&amp;nbsp;conditions&lt;br /&gt;&lt;br /&gt;  catch&amp;nbsp;(IOException&amp;nbsp;e)&lt;br /&gt;&lt;br /&gt;  {&lt;br /&gt;&lt;br /&gt;   System.err.println&amp;nbsp;(\&amp;quot;Unable&amp;nbsp;to&amp;nbsp;read&amp;nbsp;from&amp;nbsp;file\&amp;quot;);&lt;br /&gt;&lt;br /&gt;   System.exit(-1);&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  System.out.println(\&amp;quot;Query&amp;nbsp;is&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;query);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  myDbEnv&amp;nbsp;env&amp;nbsp;=&amp;nbsp;null;&lt;br /&gt;&lt;br /&gt;  XmlTransaction&amp;nbsp;txn&amp;nbsp;=&amp;nbsp;null;&lt;br /&gt;&lt;br /&gt;  XmlContainer&amp;nbsp;openedContainer&amp;nbsp;=&amp;nbsp;null;&lt;br /&gt;&lt;br /&gt;  try&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;env&amp;nbsp;=&amp;nbsp;new&amp;nbsp;myDbEnv(path2DbEnv);&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;XmlManager&amp;nbsp;theMgr&amp;nbsp;=&amp;nbsp;env.getManager();&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;String&amp;nbsp;containerMark&amp;nbsp;=&amp;nbsp;\&amp;quot;\\\'\&amp;quot;;&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;theContainer&amp;nbsp;=&amp;nbsp;query.substring(&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  query.indexOf(containerMark)+1,&amp;nbsp;&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  query.lastIndexOf(containerMark));&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(\&amp;quot;Container&amp;nbsp;is&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;theContainer);&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Open&amp;nbsp;a&amp;nbsp;non-transactional&amp;nbsp;container&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;openedContainer&amp;nbsp;=&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; theMgr.openContainer(theContainer);&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;XmlQueryContext&amp;nbsp;resultsContext&amp;nbsp;=&amp;nbsp;theMgr.createQueryContext();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;XmlResults&amp;nbsp;results&amp;nbsp;=&amp;nbsp;theMgr.query(query.trim(),&lt;br /&gt;&lt;br /&gt;    &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;resultsContext);&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;XmlValue&amp;nbsp;value&amp;nbsp;=&amp;nbsp;results.next();&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while&amp;nbsp;(value&amp;nbsp;!=&amp;nbsp;null)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;   &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//Pull&amp;nbsp;the&amp;nbsp;value&amp;nbsp;out&amp;nbsp;of&amp;nbsp;the&amp;nbsp;document&amp;nbsp;query&amp;nbsp;result&amp;nbsp;set.&lt;br /&gt;&lt;br /&gt;   &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.out.println(value.asString());&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  }&amp;nbsp;catch&amp;nbsp;(Exception&amp;nbsp;e)&amp;nbsp;{&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.err.println(\&amp;quot;Error&amp;nbsp;performing&amp;nbsp;query&amp;nbsp;against&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;theContainer);&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.err.println(\&amp;quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;Message:&amp;nbsp;\&amp;quot;&amp;nbsp;+&amp;nbsp;e.getMessage());&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;throw&amp;nbsp;e;&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;finally&amp;nbsp;{&lt;br /&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;&amp;nbsp;cleanup(env,&amp;nbsp;openedContainer);&lt;br /&gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt; &amp;nbsp;}&amp;nbsp;//End&amp;nbsp;main&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;I am assuming you have already run the examples. So after that, please compile and&lt;br /&gt;say the following at the command line at test folder:&lt;br /&gt;java FLWOR -h &lt;path to db env&gt; -q query.txt&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115557754558974263?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115557754558974263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115557754558974263' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115557754558974263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115557754558974263'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/08/flwor-with-berkeley-db-xml.html' title='FLWOR with Berkeley DB XML'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115312451998722428</id><published>2006-07-17T13:45:00.000+05:30</published><updated>2006-07-17T13:52:25.293+05:30</updated><title type='text'>Next reading on my list</title><content type='html'>A new mom sure needs good advice on weight control, and where else to get it from than from one of the software gurus - &lt;a href="http://www.fourmilab.ch/hackdiet/www/hackdiet.html"&gt;John Walker explains the Hacker's diet&lt;/a&gt; and I am reading through it to get back in shape and fit into my old jeans!&lt;br /&gt;&lt;br /&gt;Who told me about it? Well, trust &lt;a href="http://www.blogger.com/profile/9042600"&gt;Big Brother!&lt;/a&gt; ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115312451998722428?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115312451998722428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115312451998722428' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115312451998722428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115312451998722428'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/07/next-reading-on-my-list.html' title='Next reading on my list'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115263463407756098</id><published>2006-07-11T21:17:00.000+05:30</published><updated>2006-07-17T13:32:14.440+05:30</updated><title type='text'>My favorite interview</title><content type='html'>I was reading through &lt;a href="http://weblog.raganwald.com/2006/07/its-friday-whos-having-fun.html"&gt;Reginald's interesting blog entry &lt;/a&gt; about interviews and I started trying to see if there is a pattern in the way I typically conduct an interview. The basic philosophy is to make a candidate comfortable and to try to &lt;strong&gt;select&lt;/strong&gt;, rather than reject. I usually start with asking the candidate to be at ease and to tell me something about themselves. We discuss their professional lives, why they are looking for a change, how long they have been working in the current position and so on. Then I ask them what they are working on currently, and what is their role in the project. While they speak, I try to form my opinion on their enthusiasm towards wha they are doing and how they seem to be faring in their team. This is important, as without being kicked about what you are doing, it will be difficult to sustain minimum 8 hours a day, 5 days a week. Also, most software is written in groups of 3-4, and it is important that the incumbent does not rub team members the wrong way. We have enough problems to cater to and would like to &lt;strong&gt;avoid&lt;/strong&gt; the ego hassles, thank you! &lt;br /&gt;&lt;br /&gt;I request them to explain the project high level design, and the lower level details of the modules they are working on. The idea is to get them to talk about what they should probably be knowing real well. If they make it this far, they are worth a real try to be inducted, and the interview now focusses on how much &lt;em&gt;more&lt;/em&gt; they know. Would they mind explaining a bit about the interfaces to their modules? Why are the interfaces designed the way they are? Why are particular tools being used, what are their advantages/disadvantages? Would they be knowing some alternatives to those tools - another database, another package etc? If a client has requested something, does the candidate understand the business drivers to it?&lt;br /&gt;&lt;br /&gt;There are some strong no-nos. Candidates who are not willing to be hands on - who want to purely &lt;em&gt;lead&lt;/em&gt; are refused, as I interview programmers and not managers. Candidates who seem to get irritated when prodded will again not do, as we want people who can sit and discuss pros and cons and successfully drive their point across, or accept a superior point of view. Overall, personal integrity is sought after, though very difficult to judge. If the candidate is able to accept a mistake, it speaks volumes about his/her character.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115263463407756098?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115263463407756098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115263463407756098' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115263463407756098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115263463407756098'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/07/my-favorite-interview.html' title='My favorite interview'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115220113512764197</id><published>2006-07-06T21:21:00.000+05:30</published><updated>2006-07-06T21:28:50.723+05:30</updated><title type='text'>Tweaking Tomcat</title><content type='html'>&lt;strong&gt;Problem&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;To gain control over Tomcat internal mechanism by doing the following:&lt;br /&gt;- To run tomcat programmatically in the same JVM.&lt;br /&gt;- To override default JSP invocation&lt;br /&gt;- To override default servlet invocation&lt;br /&gt;- To run the http connector and listen to http requests&lt;br /&gt;- Intercept requests and furnish request information like headers, body, get and post data&lt;br /&gt;- To access uploaded file information&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;About Tomcat&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Tomcat is a servlet container implementing the Java Servlet 2.4 Specifications. It is also holds a JSP engine as per the JSP 1.2 Specifications.&lt;br /&gt;&lt;br /&gt;The basic functionality of Tomcat can be summarized as:&lt;br /&gt;- Creating a request object by parsing the http request headers, bodyand other information which can be passed on to the invoked servlet&lt;br /&gt;- Creating a response object which can be passed back to the requesting client(typically a browser)&lt;br /&gt;- Invoking the service method of the responsible servlet&lt;br /&gt;&lt;br /&gt;To achieve the above, Tomcat consists of two main modules – &lt;strong&gt;Connector&lt;/strong&gt; and the &lt;strong&gt;Container&lt;/strong&gt;. The Connector’s main job is to construct a request and response object for each HTTP request it receives, and connect the request with the container. The container is the processor of the request, it receives the Request and Response objects from the Connector and invokes the service method of the Container.&lt;br /&gt;&lt;br /&gt;The various types of containers in Tomcat are:&lt;br /&gt;1. A &lt;strong&gt;Server&lt;/strong&gt; element represents the entire Catalina servlet container&lt;br /&gt;2. A &lt;strong&gt;Service&lt;/strong&gt; element represents the combination of one or more Connector components that share a single Engine component for processing incoming requests. One or more Service elements may be nested inside a Server element.&lt;br /&gt;3. The &lt;strong&gt;Engine&lt;/strong&gt; element represents the entire request processing machinery associated with a particular Catalina Service. It receives and processes all requests from one or more Connectors, and returns the completed response to the Connector for ultimate transmission back to the client. Exactly one Engine element MUST be nested inside a Service element, following all of the corresponding Connector elements associated with this Service.&lt;br /&gt;4. &lt;strong&gt;Host&lt;/strong&gt;: This allows multiple servers to be configured on the same physical machine and be identified by separate IP addresses.&lt;br /&gt;5. &lt;strong&gt;Context&lt;/strong&gt;: This represents a single web application&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Solution Approach&lt;br /&gt;&lt;/strong&gt;As we are concerned with request interception before it reaches the servlet layer, we need to &lt;strong&gt;&lt;em&gt;create a custom container and attach the HTTP connector to it.&lt;/em&gt;&lt;/strong&gt; Requests from the connector can then be pointed to the custom container instead of the default servlet container. As we are dealing at the entire request processing level, a &lt;strong&gt;&lt;em&gt;custom Engine object&lt;/em&gt;&lt;/strong&gt;(SimpleContainer) is created.&lt;br /&gt;The basic concept of Tomcat request processing is &lt;strong&gt;pipelining&lt;/strong&gt;. A pipeline contains tasks that the container will invoke. A valve represents each task. There is one basic valve in the container’s pipeline, but we can add as many valves as we want. The pipeline invokes the first valve and this valve invokes the next and then the invoked valve invokes the next and so on till all the valves are invoked. So, our custom container needs a &lt;strong&gt;&lt;em&gt;custom valve&lt;/em&gt;&lt;/strong&gt; as its first valve, so as to consume the request and do the necessary processing&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115220113512764197?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115220113512764197/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115220113512764197' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115220113512764197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115220113512764197'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/07/tweaking-tomcat.html' title='Tweaking Tomcat'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115124516991705815</id><published>2006-06-25T19:47:00.001+05:30</published><updated>2006-06-25T19:53:31.406+05:30</updated><title type='text'>Software Estimation - why is it so darn tough?</title><content type='html'>When I talk to my software industry friends and colleagues, one thing almost all of us seem to agree upon is the difficulty in assessing the effort and time required for any particular task. Most of the times, we are not sure why this happens, but in general, we almost always end up taking more time than committed. More time may not necessarily mean delaying deadlines, in most cases, it ends up eating into personal time and late hours at work.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Why is estimation so darn tough??&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;To begin with, in most cases, we have no clue as to the work that we will be doing. Let me take an example: Add News Content from a Third Party to an existing site. Generally, our approach would be:&lt;br /&gt;A) Have a gut feel. Somehow. 3 weeks. Does it sound reasonable? Umm, yeah, why not..maybe its a bit off the mark..let me look further&lt;br /&gt;B) Well, we need to make changes to the front end, new pages have to be created. See how many pages to be created and the time it generally takes to create one on an average. 1 week max&lt;br /&gt;C) Changes to the middle tier - some coding will have to be done to get the data..Maybe parsing it etc. Another week&lt;br /&gt;D) Overall, few changes here and there..Yeah, I think I can complete in 2.5 weeks, but let me add some buffer just to be safe. 3 weeks look good&lt;br /&gt;&lt;br /&gt;One week down the line, we realize 3 weeks is way too less..what went wrong?A quick checklist to avoid the pitfalls of hasty estimation&lt;br /&gt;A) Ask the right questions and scoping correctly. We need to be absolutely sure about the requirements&lt;br /&gt;B) Question the interfaces. What kind of support will we get from the third party? What status are their APIs in? The more the interfaces, the more time it will take&lt;br /&gt;C) Go into details and specifics. How many new classes/ methods/changes to existing classes and methods? Any new stylesheets required? Any database changes? To what effect?&lt;br /&gt;D) How will we test? What all needs to be tested&lt;br /&gt;E) We will need time to document design and code&lt;br /&gt;F) Time will be spent in code and design reviews&lt;br /&gt;G) Time is taken up in follow up with team members&lt;br /&gt;H) Time will be spent in code control, build scripts, release depolyments&lt;br /&gt;I) Time is required for preparing test beds&lt;br /&gt;J) Time is required for the creation of development environment&lt;br /&gt;K) Do we need to test all that is fully functional already? Impact on existing system. Whereall does it hit? We need time to reconfigure the earleir working version so that doesnt break with new added functionality&lt;br /&gt;L) Time is also taken up in organizational status reporting and monitoring&lt;br /&gt;M) There may be sick time - plan some unexpected time off for team members&lt;br /&gt;N) Some trainings and holidays may impact the project schedule&lt;br /&gt;O) Last but not the least, review the estimate. If we can list all the major and monir activities we will be doing and the time taken to do them, we can not be too way off from the actuals. However, if we miss some activities completely, they will really hit hard on the estimates.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115124516991705815?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115124516991705815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115124516991705815' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115124516991705815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115124516991705815'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/06/software-estimation-why-is-it-so-darn_25.html' title='Software Estimation - why is it so darn tough?'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-115071441263867728</id><published>2006-06-19T15:33:00.000+05:30</published><updated>2007-03-09T18:18:31.400+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flat'/><category scheme='http://www.blogger.com/atom/ns#' term='housing'/><category scheme='http://www.blogger.com/atom/ns#' term='ananda'/><category scheme='http://www.blogger.com/atom/ns#' term='apartment'/><category scheme='http://www.blogger.com/atom/ns#' term='properties'/><category scheme='http://www.blogger.com/atom/ns#' term='Eldeco'/><category scheme='http://www.blogger.com/atom/ns#' term='construction'/><title type='text'>Eldeco, NOIDA, marketing et al</title><content type='html'>I booked a flat in Eldeco Ananda, hoping I will save myself from the travails of constructing my own house. Though the prices were exorbitant, I was expecting that I will get service asI am opting for top-end premium stuff and paying the price for it. How wrong could I be!&lt;br /&gt;&lt;br /&gt;1. Before booking the flat, the marketing executive told us that it would be possible to replace the wooden flooring in the bedrooms with marble, just like the rest if the house. No cost would have to be borne by us. As soon as we decided to book and communicated the same to him, he said that the flooring will be changed subject to a very nominal amount. After booking, I was told that flooring can not be changed in all the rooms, only the flooring in one of the rooms can be changed. The cost was to be about 15k, which is even more than the flooring cost of a similar sized room. To say the least, if I want to get it done, Eldeco expects me to pay more than double the cost, one which I have already paid in the base amount, and second is the extra charges for "alteration"&lt;br /&gt;&lt;br /&gt;2. The company asked me to pay them the registration amount along with the miscellaneous amount and only then they would start thehalnding over of possession process. Registration is to be done in NOIDA authority and the company, being the seller, is also a party to the process. However, Eldeco mandates that registration be done through them, and they charge a hefty fee for that. Its been more than two months, I have been following up with Eldeco like crazy, and there is no reply. They say it is in progress, whereas I know ATS and other builders are queuing up at NOIDA office and getting their stuff done easily. Even individuals are able to get registration done at the authority within 2-3 days, so I am wondering what makes Eldeco spend that much time sitting on my money..?&lt;br /&gt;&lt;br /&gt;3. At the time of booking, I was told I could opt out of the power backup(12k per kva!!) if I wanted. Ofcourse, now the reps tell me that they could NEVER EVER have told me that, how could they when it is just NOT possible? Ofcourse, some miscommunication, if at all..But I wonder why all the miscommunication seems to fit their ends, not mine...?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-115071441263867728?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/115071441263867728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=115071441263867728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115071441263867728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/115071441263867728'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/06/eldeco-noida-marketing-et-al.html' title='Eldeco, NOIDA, marketing et al'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-114863090468065543</id><published>2006-05-26T13:23:00.000+05:30</published><updated>2006-05-26T13:50:05.820+05:30</updated><title type='text'>Tomcat</title><content type='html'>One interesting book I am reading these days is How Tomcat Works by Budi Kurniawan and Paul Deck. Unlike other books on the topic, this book concentrates on Tomcat internals, making it a very attractive reading for developers interested in behind the scenes working. Instead of user centric, the book is developer centric. It assumes a fair knowledge of Java and the Servlet API, and creates sample applications to unravel the details. It starts with building a simple Java based client and server, and takes on from there to describe the Tomcat connector architecture, main classes and their interaction.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-114863090468065543?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/114863090468065543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=114863090468065543' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114863090468065543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114863090468065543'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/05/tomcat.html' title='Tomcat'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-114862992491723826</id><published>2006-05-26T13:16:00.000+05:30</published><updated>2006-05-26T13:22:04.926+05:30</updated><title type='text'>Good days, bad days..</title><content type='html'>There are some periods in everyone's life where everything is going either as smooth or as silk, or so bad that one hopes it cant get worse! Over the last month, I have had strange computer viruses, bad broadband connections, dead telephone lines, tap leaks, tv faults, stabilizer problems......Seems no amount of backup planning and checks can save me from the maintenence of household items! I think I need a break from the continuous device maintenence and running after sales reps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-114862992491723826?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/114862992491723826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=114862992491723826' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114862992491723826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114862992491723826'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/05/good-days-bad-days.html' title='Good days, bad days..'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-114805837227944211</id><published>2006-05-19T22:21:00.000+05:30</published><updated>2006-05-20T12:00:43.683+05:30</updated><title type='text'>Reservation: Sitaram Yechury's Column in HT on 18/05</title><content type='html'>&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;In his article LEFT HAND DRIVE - Brand equity : Reservations are a part of affirmative action. In this lies India’s future" Sitaram Yechury says&lt;/span&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;That the same sections today oppose reservations in education speaks volumes&lt;br /&gt;of their inherent upper-caste bias. This is further attested by the fact&lt;br /&gt;that currently, in an overwhelmingly large number of private educational&lt;br /&gt;institutions, there exists the system of admission by paying capitation fee.&lt;br /&gt;What else is this but reservation for the rich.&lt;br /&gt;The only ‘merit’ required in this scheme is to have enough money to, literally, buy&lt;br /&gt;admission. In some cases (quite large in number), private institutions offer&lt;br /&gt;seats to NRIs through what is virtually an auction process. The highest&lt;br /&gt;bidder wins. The complete absence of any consideration of merit in these&lt;br /&gt;cases is never questioned. Merit, however, becomes an issue when it comes to&lt;br /&gt;providing access to those who have been denied education for centuries.&lt;/span&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;The point made here is that the rich always try to buy their way out, whereas the poor are left to fend for themselves. And in the education sector this disparity shows more than anywhere else. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;I would like to use this analogy in the sector where Mr. Yechury earns his livelihood. Politics. Elections. We all know the kind of muscle power and money used during election time. Parties form coalitions, buying out elected representatives. By his own admission, this should be stopped too.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;Also, the cabinet should comprise of ministers in the same ratio, and so should state cabinets. After all, it is all but fair that due representation be given to people of the so called opressed classes, and what better way than to provide them the power to run the government machinery and carve a government of the people, by the people and for the people, right Mr Yechury?&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;It is amazing that the people who are advocating reservations this time in IITs, IIMs, AIIMS and other prestigious colleges are not crying hoarse over the same amount of reservations in administrative services, IAS, PCS, IRS etc. Why not, does it hurt?&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;It is tragic that time and again, the poor are put synonymous with the backward and schedules classes, and it is assumed that the so called high class is made up of the rich and the super rich. Petty politicians will not shy away from dividing the youth of the nation to serve their own vested interests and vote banks.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-114805837227944211?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/114805837227944211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=114805837227944211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114805837227944211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114805837227944211'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/05/reservation-sitaram-yechurys-column-in.html' title='Reservation: Sitaram Yechury&apos;s Column in HT on 18/05'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-114805679340209712</id><published>2006-05-19T22:09:00.000+05:30</published><updated>2006-05-19T22:20:55.950+05:30</updated><title type='text'>Followup: The basics of housing loans</title><content type='html'>&lt;a href="http://sonalgoyal.blogspot.com/2006/01/basics-of-housing-loans.html#links"&gt;Followup: The basics of housing loans&lt;/a&gt;&lt;br /&gt;An addition to my last post on housing loan.&lt;br /&gt;When researching on floating rate loans the general feedback we got was take the loan from any bank, you will end up paying a higher rate of interest once your loan starts. The banks always increase the rate of interest on any existing account, but somehow manage to still give new loans at a lower rate.&lt;br /&gt;The catch here is to understand the concept of a PLR (Prime Lending Rate) that every bank maintains. The PLR is known by differnt names in different banks, but the use is still the same. Whenever a loan is taken the banks give a discount on the PLR. This discount is kept constant throughout the loan tenure. However what most banks do is to keep chanding the PLR and the discount from the PLR that is given.&lt;br /&gt;So there is the answer to one question that I always wondered. How do new loans are still given at a lower rate of interest, even when the rate of interests in general have gone up. The trick lies in the discount given by the banks. The PLR is hiked, whenever the RBI changes any of the finanacial rates. But to keep the competition away, what banks do is to increase the discount from the PLR. Thus still offering the new loans at a lower rate.&lt;br /&gt;The result of a change in PLR is that the rate of interest for existing loan account goes up, as the discount is constant. However, new loan accounts are still being offered at the same rate of interest, although with a higher discount. &lt;br /&gt;So, if you are lucky, try to take the loan when the discounts are high and the PLR is low. That way you can minimize the interest outgo on your loan account.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-114805679340209712?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/114805679340209712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=114805679340209712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114805679340209712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114805679340209712'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/05/followup-basics-of-housing-loans.html' title='Followup: The basics of housing loans'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-114804861773762644</id><published>2006-05-19T19:48:00.000+05:30</published><updated>2006-07-06T21:42:28.673+05:30</updated><title type='text'>Nandini arrives</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/4233/611/1600/Arushi%201st%20month%20028.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/4233/611/320/Arushi%201st%20month%20028.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/4233/611/1600/Arushi%201st%20month%20076.jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/4233/611/320/Arushi%201st%20month%20076.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-114804861773762644?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/114804861773762644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=114804861773762644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114804861773762644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/114804861773762644'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/05/nandini-arrives.html' title='Nandini arrives'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-113861528918218886</id><published>2006-01-30T15:24:00.000+05:30</published><updated>2006-01-30T15:31:29.200+05:30</updated><title type='text'>Richard Branson's Losing My Virginity</title><content type='html'>I recently picked up a copy of Richard Branson's autobiography: Losing My Virginity. I must say the book is mind boggling. Very very gripping and indeed an eye opener, with a good insight into the Virgin empire build up, Branson's struggles and his thoughts. It is extremely well written, and I am glad I got a chance to read it. Some ideas are really fascinating, like when he says that whenever Virgin is faced with a cash crisis, his immediate reaction is to expand! Wow! Lateral thinking!! For some reason, I had earlier always dismissed Branson as a funny person, finding his ways weird and a bit dramatic and over the top. However, reading the book made me realize that maybe he is like that only, who else will try to go for balloon trips round the world ?? &lt;br /&gt;&lt;br /&gt;Next time I go to London, I am definitely visting the Oxford Street Music Shop. Just to get a feel of it..:)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-113861528918218886?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/113861528918218886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=113861528918218886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113861528918218886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113861528918218886'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/01/richard-bransons-losing-my-virginity.html' title='Richard Branson&apos;s Losing My Virginity'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-113758400012819885</id><published>2006-01-18T16:39:00.000+05:30</published><updated>2006-05-19T20:38:09.743+05:30</updated><title type='text'>The basics of housing loans</title><content type='html'>Did some research for housing loans. Typically, banks finance anywhere from 80-90% of the price of the house, and also allow top up loans for registration, lease rent, parking etc. Basically, there are three kinds of loans&lt;br /&gt;&lt;br /&gt;1. Fixed Rate - The bank and you agree upfront on some current interest rate, and this rate is supposed to stay the same irrespective of market conditions throughout the tenure of the loan. This kind of a loan can be advantageous if you expect the rates to rise in the future. However, most banks keep a money market clause, which enables them to change the rates if there is a big swing in the rates. Downward revision..well, appears tough&lt;br /&gt;&lt;br /&gt;2. Floating rate - Interest rate can be downward or upward revised based on market conditions. With most banks, especially the private ones, downward revision is a very painful task, you keep ringing the call centre and they would do their best to delay the rate change(downward revision). Upward revision, well, you dont need to guess how smooth it can be ;) However, if the market rates remain unpredictable, floating rate loans appear more attractive. Floating rates are also usually lower than the fixed rates.&lt;br /&gt;&lt;br /&gt;3. Floating with home saver - Interest rate clause same as floating rate above, but you get an account in which you can keep parking money. The money parked is struck off against the principal amount outstanding, and interest calculated on the remaining amount. You have the flexibility to take out the money, and the outstanding prinicipal and interest is calcultaed as per the duration the money stayed in the bank. Rates however are higher than the normal floating loan, as there is a price to liquidity attached. &lt;br /&gt;&lt;br /&gt;Some catches, things to watch out for:&lt;br /&gt;1) Most home loan representatives will try to sell the home saver option, if any such option exists.    They will show interesting graphs of how home saver with higher interest rate still works out cheaper than a normal floating rate loan. The calculations they show reveal that if you keep even a small amount of money parked in your home saver account, you radically reduce the interest payable and hence the term of the loan (keeping the emi constant). However, what they feel to demonstrate is that if you part-pay the same amount in the normal floating loan, how much you can save. If you are an individual looking to part pay, and liquidity is not that critical for you, a normal loan works out much cheaper than the home saver. However, for a person who needs liquidity and is not looking to part pay the loan, home saver with higher rate, although more expensive, is the way to go.&lt;br /&gt;&lt;br /&gt;2) Processing fee can generally get waived off if you can bargain well with the rep, the higher the amount, the more the cut got by the representative and the easier it is to waive off the processing fee.&lt;br /&gt;&lt;br /&gt;3) Check for pre-emi. This is a concept by some banks, where the emi doesnt start immediately on loan disbursement, but a few months after it. Till the time emi starts, one has to pay simple interest on the loan amount, which is NOT offset against the loan. &lt;br /&gt;&lt;br /&gt;4) Check for the time it takes for loan disbursement. Once you surrender the papers to the representative, you may need to run after him to make sure that you meet the builder's deadlines.  Keep sufficient buffers for last minute surprises.&lt;br /&gt;&lt;br /&gt;5) Check the top up options. Some banks do not finance lease rent, club membership etc. &lt;br /&gt;&lt;br /&gt;6) Go for a as small a tenure as you can afford. The lesser the tenure, the lesser interest in actual amounts that you pay, though the rate remains the same.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-113758400012819885?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/113758400012819885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=113758400012819885' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113758400012819885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113758400012819885'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2006/01/basics-of-housing-loans.html' title='The basics of housing loans'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-113594339302491731</id><published>2005-12-30T17:11:00.000+05:30</published><updated>2006-05-19T21:24:31.706+05:30</updated><title type='text'>Subarray with largest sum - Java</title><content type='html'>Came across an interesting puzzle and realized that the mind is getting too used to not thinking..need to exercise the brain more often. Anyways, the puzzle is&lt;br /&gt;&lt;br /&gt;Given an array containing both positive and negative integers, find the subarray with the largest sum.&lt;br /&gt;&lt;br /&gt;BTW, any guesses for the maximum number of subarrays possible for an array of length n? For some reason, took me a long time to figure this out, write to me if you also go through the same, but better still, try to solve it yourself to clear the dust off the mind cells, I am not sure how much I have been able to shake off, but it is worth a try)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-113594339302491731?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/113594339302491731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=113594339302491731' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113594339302491731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113594339302491731'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2005/12/subarray-with-largest-sum-java.html' title='Subarray with largest sum - Java'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-113332978351898112</id><published>2005-11-30T11:08:00.000+05:30</published><updated>2006-05-19T21:14:11.016+05:30</updated><title type='text'>How to avoid bugs</title><content type='html'>I have often come across some developers who for some reason do not ever want to test what they have written. They write code, see if it compiles, check one or two scenarios and viola, expect it to work like magic! For some strange reason, the brain wiring of us developers is such that we trust our code completely, and feel that there are very remote chances of it going wrong.&lt;br /&gt;&lt;br /&gt;Unfortunately, this does not happen too often, and most of us end up sitting late night in office fixing things they could have caught much earlier on, when there was sufficient time to clean the mess. If you are developing code and in all likelihood will also maintain it later, it makes a lot of sense to test things properly. even if you are planning to pass on the code to some other person, it will save both of you a lot of trouble if the code was well written and thoroughly tested. Here are some time tested techniques.&lt;br /&gt;&lt;br /&gt;1. Think before you leap. &lt;br /&gt;Sounds weird and bookish? However, a well planned code in all likelihood will also be well executed. Most of us try to rush to the code and make changes as soon as we sight a new feature or a bug report. However, this rush tends to make us forget the corner cases, those which almost often turn up in user testing. It helps to take a deep breath, stop yourself from changing the code immediately, and just imagine the kind of change and its impact on the flow and&lt;br /&gt;&lt;br /&gt;2. Write comments before writing code. &lt;br /&gt;A very basic tehcnique, this helps to develop clarity about the module one is planning to write. It does not take much effort either, and once the code is written and one goes back to the comments, one realizes the missed cases and the erroneous implementations. It also saves time during coding. One needs to try this to fully understand the power behind such a simple technique&lt;br /&gt;&lt;br /&gt;3. Take a print and read your code. &lt;br /&gt;Once the code is fully tested as per your satisfaction, take a print and read it at leisure. You will be surprised to find the number of doubts you get, or the soaring confidence you have at the  well executed code. If taking a print is not comfortable, one can read it on the screen too, though personally I think one tends to miss out on things on the screen. If your team has group code reviews, its great, but if not, then you probably need ot take onus and read the code yourself.&lt;br /&gt;&lt;br /&gt;4. Version control at logical points. &lt;br /&gt;It helps a lot to check in code at regular intervals. Logical points help one achieve clarity of how the code is shaping up, what all is already implemented and what all features need to be put in. One can revert to an older version in case of an issue, and not lose the older working copy in case of an erroneous new feature.&lt;br /&gt;&lt;br /&gt;5. Scan code for issues. &lt;br /&gt;Once you get a bug, you can check the other similar cases and see if the same kind of bug is reappearing at other places. This technique helps you to understand yourself much better, you will be surprised to find that you probably missed out on some specification, or misunderstood it, or could not think of some particular scenarios. Any or all of this information helps you shape up as a much better coder in the long run.&lt;br /&gt;&lt;br /&gt;I guess there are no magic mantras, the above techniques are all fundamental and time tested. Just hoping that having them in one place will help!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-113332978351898112?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113332978351898112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/113332978351898112'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2005/11/how-to-avoid-bugs.html' title='How to avoid bugs'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-8771024.post-109809405887026889</id><published>2004-10-18T15:29:00.000+05:30</published><updated>2005-11-30T10:38:28.690+05:30</updated><title type='text'>Arts and Crafts</title><content type='html'>I am deeply interested in arts and crafts these days. Trying my hand at all sorts of pencil sketching, watercolors, poster colours, oil painting etc. Its a wonderful outlet to one's creativity. &lt;a href="http://www.wetcanvas.com/"&gt;www.wetcanvas.com&lt;/a&gt; is a great place to start.&lt;br /&gt;&lt;br /&gt;I am also very exicted about Indian handicrafts - especially marble Taj Mahal replicas, carved lamps, etc. &lt;a href="http://www.kashand.com/"&gt;www.kashand.com&lt;/a&gt; is a great place to buy any such items, islamic art, Indian brass decor, marble inlay table tops,Taj Mahal miniatures etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8771024-109809405887026889?l=sonalgoyal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sonalgoyal.blogspot.com/feeds/109809405887026889/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8771024&amp;postID=109809405887026889' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/109809405887026889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8771024/posts/default/109809405887026889'/><link rel='alternate' type='text/html' href='http://sonalgoyal.blogspot.com/2004/10/arts-and-crafts.html' title='Arts and Crafts'/><author><name>Sonal</name><uri>http://www.blogger.com/profile/09670158644121201477</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry></feed>
