<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>Vinay Srini</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/" />
   <link rel="self" type="application/atom+xml" href="http://developer.spikesource.com/blogs/vsrini/atom.xml" />
   <id>tag:developer.spikesource.com,2008:/blogs/vsrini//1</id>
   <updated>2008-08-06T13:51:59Z</updated>
   
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type Enterprise 1.5</generator>

<entry>
   <title>TestGen4Web update 1.0.0</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2008/06/testgen4web_update_10_1.html" />
   <id>tag:developer.spikesource.com,2008:/blogs/vsrini//1.76</id>
   
   <published>2008-06-27T19:41:49Z</published>
   <updated>2008-08-06T13:51:59Z</updated>
   
   <summary>I am excited to announce testgen4web 1.0.0 This is a great release with lots of new features. Download here: http://developer.spikesource.com/frs/?group_id=14&amp;release_id=107 Note: I have tested this on only firefox 3 - Please let me know if you need a firefox 2...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
         <category term="TestGen4Web" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[I am excited to announce testgen4web 1.0.0
This is a great release with lots of new features.

Download here: <a href="http://developer.spikesource.com/frs/?group_id=14&release_id=107">http://developer.spikesource.com/frs/?group_id=14&release_id=107</a>

Note: I have tested this on only firefox 3 - Please let me know if you need a firefox 2 version, and it can be tested there too!

Here are the list of features:

New features added:
<ol>
    <li><strong>brand new shiny editor</strong>: All new editor with easy to use interface. Much more simplified from the previous versions of the editor. See screenshot!.<br/>
<img alt="tg4w-screenshot2.png" src="http://developer.spikesource.com/blogs/vsrini/tg4w-screenshot2.png" width="518" height="279" />

    New features include:
    <ul>
        <li>Nicer editing featues</li>
        <li>Shows status of the current step when running the recording by adding a <font color='red'>&gt;&gt;</font> at the begining of the step in the editor</li>
        <li>"Run Status" tab on the right pane of the editor shows the status of the player/recorder, status of the datasets and variables<br/>
<img alt="runstatus.png" src="http://developer.spikesource.com/blogs/vsrini/runstatus.png" width="467" height="228" />
</li>
        <li>"Debug" tab provides easy way to run javascript on the page, build a xpath and try it out before running the actual command<br/>
<img alt="debug.png" src="http://developer.spikesource.com/blogs/vsrini/debug.png" width="459" height="366" />
</li>
    </ul>
    </li>
    <li><strong>execute-js action</strong>: execute random javascript during execution of the script. This would help developers work around some quirks of firefox and testgen4web. eg: http://developer.spikesource.com/forums/viewtopic.php?t=865</li>
    <li><strong>assert-text with xpath</strong>: this action until now was pretty much ignored. Now the user has an option to select where to assert the text. There are 2 ways
    <ul>
        <li>* as xpath will search the entire page</li>
        <li>specify an actual xpath will search in that area</li>
    </ul></li>
    <li><strong>detachable bar</strong>: you don't have to be thethered to the main window anymore. detach the testgen4web toolbar and keep it on the side for editing long recordings easily. <img alt="detach.gif" src="http://developer.spikesource.com/blogs/vsrini/detach.gif" width="16" height="16" />
</li>
    <li><strong>Simple xpath support</strong>: Now you can record with simple xpath. This xpath generating script will be complete xpath (NOTE: that your recording might break if simple things on your webpagee changes. I would still recommend that you use the 'smart xpath' option.
<img alt="simple-xpath.png" src="http://developer.spikesource.com/blogs/vsrini/simple-xpath.png" width="425" height="420" /></li>
</ol>]]>
      
   </content>
</entry>
<entry>
   <title>TestGen4Web Tutorial Series - Using simple conditions</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/12/testgen4web_tutorial_series_us.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.72</id>
   
   <published>2007-12-20T17:16:49Z</published>
   <updated>2008-08-01T15:25:30Z</updated>
   
   <summary> &quot;Using Simple Conditions with TestGen4Web&quot; Prompted by a post on the forums, here comes the 2nd video tutorial demonstrating creating a &quot;simple condition&quot; with testen4web. There was one other video tutorial before this. Find all the links here: http://developer.spikesource.com/wiki/index.php/Projects:TestGen4WebDocs#Tutorials...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
         <category term="TestGen4Web" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[<div style="text-align:center;border:1px solid green;">
<strong>"Using Simple Conditions with TestGen4Web"</strong><br/>
<a href="http://developer.spikesource.com/docman/view.php/14/853/tg4w-condition.htm">
<img alt="video.jpg" src="http://developer.spikesource.com/blogs/vsrini/video.jpg" width="36" height="28" />
</a>
</div>

Prompted by a <a href="http://developer.spikesource.com/forums/viewtopic.php?t=814">post</a> on the forums, here comes the 2nd video tutorial demonstrating creating a "simple condition" with testen4web.

There was one other video tutorial before this. Find all the links here:
<a href="http://developer.spikesource.com/wiki/index.php/Projects:TestGen4WebDocs#Tutorials">http://developer.spikesource.com/wiki/index.php/Projects:TestGen4WebDocs#Tutorials</a>]]>
      
   </content>
</entry>
<entry>
   <title>New Video Tutorial Series - Using csv files to load data with TestGen4Web</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/12/new_video_tutorial_series_usin.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.71</id>
   
   <published>2007-12-20T17:16:49Z</published>
   <updated>2007-12-20T17:25:46Z</updated>
   
   <summary>First a little introduction for those who don&apos;t know what TestGen4Web is: TestGen4Web is a 2 part tool. 1. A firefox extension where you can capture your navigation on the webpage and play it back. 2. A Unit Test generator...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
         <category term="TestGen4Web" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[First a little introduction for those who don't know what TestGen4Web is:

<blockquote>TestGen4Web is a 2 part tool. 

1. A firefox extension where you can capture your navigation on the webpage and play it back.
2. A Unit Test generator to run tests on the command line without using firefox.
</blockquote>
More details at <a href="http://developer.spikesource.com/wiki/index.php/Projects:TestGen4Web">http://developer.spikesource.com/wiki/index.php/Projects:TestGen4Web</a>

There was a <a href="http://developer.spikesource.com/forums/viewtopic.php?t=802">comment</a> on our forum about lack of documentation about features - I decided to take action - thanks for rholder.

I have introduced a video tutorial series - which I will hopefully keep up and add more videos in the future.

<a href="http://developer.spikesource.com/wiki/index.php/Projects:TestGen4WebDocs#Tutorials">http://developer.spikesource.com/wiki/index.php/Projects:TestGen4WebDocs#Tutorials</a>

And finally ... the first tutorial ... drum roll ... introducing ....

<strong>"Using CSV Files with TestGen4Web"</strong>
<a href="http://developer.spikesource.com/docman/view.php/14/850/tg4w-dataset.htm">http://developer.spikesource.com/docman/view.php/14/850/tg4w-dataset.htm</a>]]>
      
   </content>
</entry>
<entry>
   <title>[citation] Linus Torvalds on Open Source: &apos;A Much Better Way to Do Things&apos;</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/11/citation_linus_torvalds_on_ope.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.62</id>
   
   <published>2007-11-05T17:40:54Z</published>
   <updated>2007-12-19T22:44:23Z</updated>
   
   <summary>&quot;Linux really wouldn&apos;t have gone anywhere interesting at all if it hadn&apos;t been released as an open source product. I also think that the change to the GPLv2 from my original &apos;no money&apos; license was important, because the commercial interests...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   <category term="16" label="linux" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="14" label="open-source" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA["<em>Linux really wouldn't have gone anywhere interesting at all if it hadn't been released as an open source product. I also think that the change to the GPLv2 from my original 'no money' license was important, because the commercial interests were actually very important from the beginning. The commercial distributions were what drove a lot of the nice installers and pushed people to improve usability,</em>" said Linux creator Linus

Complete story here:
<a href="http://www.technewsworld.com/story/60052.html">http://www.technewsworld.com/story/60052.html</a>


While this blog talks about the creator of Linux, I have heard many different ways people pronounce <strong>'linux'</strong>. Here is how Linus Torvalds - the creator pronounces it himself.

<a href="http://www.paul.sladen.org/pronunciation/">http://www.paul.sladen.org/pronunciation/</a>]]>
      
   </content>
</entry>
<entry>
   <title>[link] delete old mail in thunderbird</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/09/link_delete_old_mail_setting_i_1.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.55</id>
   
   <published>2007-09-24T18:52:22Z</published>
   <updated>2007-09-24T19:04:30Z</updated>
   
   <summary>There are some folders on your mail which keep accumulating junk, and the only messages that matter are the latest ones. You can set &quot;Message Retention Policy&quot; in thunderbird for each folder. http://kb.mozillazine.org/Message_aging Steps: 1. Right click on the desired...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   <category term="9" label="preferences" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="8" label="thunderbird" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[There are some folders on your mail which keep accumulating junk, and the only messages that matter are the latest ones.
You can set "Message Retention Policy" in thunderbird for each folder.

<a href="http://kb.mozillazine.org/Message_aging">http://kb.mozillazine.org/Message_aging</a>

Steps:
1. Right click on the desired folder - click on "Properties"
2. Click on "Retention Policy" tab
3. Set your desired preferences


Sample screenshot:
<img alt="tb_retention_policy.png" src="http://developer.spikesource.com/blogs/vsrini/tb_retention_policy.png" height="200" />]]>
      
   </content>
</entry>
<entry>
   <title>[link] Autolinkification in bugzilla</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/09/link_autolinkification_in_bugz.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.54</id>
   
   <published>2007-09-14T17:18:20Z</published>
   <updated>2007-09-14T17:24:15Z</updated>
   
   <summary>Type &quot;Bug 1234&quot; in bugzilla comment text and when viewing bug details, it is automagically linked to the bug. If the bug is closed, there is a strike through! It is not limited to just &quot;Bug #&quot;. The feature extends...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   <category term="5" label="bugzilla" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="7" label="text-convert" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[Type "Bug 1234" in bugzilla comment text and when viewing bug details, it is automagically linked to the bug. If the bug is closed, there is a <strike>strike through</strike>!

It is not limited to just "Bug #". The feature extends to attachments, comments, urls etc. More details in the link to bugzilla documentation.

<a href="http://www.bugzilla.org/docs/tip/html/hintsandtips.html">http://www.bugzilla.org/docs/tip/html/hintsandtips.html</a>

A very handy feature some bugzilla users may not know about!]]>
      
   </content>
</entry>
<entry>
   <title>tomcat jdbc connection pool configuration</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/09/tomcat_jdbc_connection_pool_co.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.53</id>
   
   <published>2007-09-14T01:20:44Z</published>
   <updated>2007-09-13T17:34:38Z</updated>
   
   <summary><![CDATA[Over time, I have tried many combinations to keep jdbc connections from tomcat's connection pool fresh. I frequently got stale connections until after many tweaks, I found the winning combination. &lt;Resource name="jdbc/myresource" scope="Shareable" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/db" driverClassName="com.mysql.jdbc.Driver" username="myuser" password="xxxxx" maxIdle="3" maxActive="10"...]]></summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   <category term="4" label="configuration" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="3" label="connection-pool" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1" label="tomcat" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[Over time, I have tried many combinations to keep jdbc connections from tomcat's connection pool fresh. I frequently got stale connections until after many tweaks, I found the winning combination.

<pre>    &lt;Resource name="jdbc/myresource" scope="Shareable"
        type="javax.sql.DataSource"
        url="jdbc:mysql://localhost:3306/db"
        driverClassName="com.mysql.jdbc.Driver"
        username="myuser"
        password="xxxxx"
        maxIdle="3"
        maxActive="10"
        removeAbandoned="true"
        removeAbandonedTimeout="60"
        testOnBorrow="true"
        validationQuery="select count(*) from sometablename"
        logAbandoned="true"
      /&gt;
</pre>]]>
      
   </content>
</entry>
<entry>
   <title>revelation: embedded images in html</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/08/revelation_embedded_images_in.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.52</id>
   
   <published>2007-08-31T07:38:09Z</published>
   <updated>2007-08-31T07:46:04Z</updated>
   
   <summary>Did not know I could ship the entire image embedded in html - encoded in base 64. View source on this page and see how Powerd by apache image is shown! eg: BINARY DATA HERE&quot; /&gt; Ref: http://www.unixreview.com/documents/s=8217/ur0305h/...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[Did not know I could ship the entire image embedded in html - encoded in base 64.<br/>
<em>View source</em> on this page and see how <b>Powerd by apache</b> image is shown!<br/>
<br/>
eg:<br/>
< img src="data:image/gif;base64,<br/>
BINARY DATA HERE" />

<br/>
<br/>

<img
   src="data:image/gif;base64,
    R0lGODlhAwEgAPcAAP///87OzqWlpYSEhHNzc2tra1paWiEYGP9CGP8xAL1SEN6thO+cQv+E
    AP/OGP/OAM7Oxr29xjEA/2MA/5wA/+8A/+dK79573talzv8AnO9KjP8AY+eEnO9SY/8AGAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAEALAAAAAADASAARwj/AAMIHEiwoMGD
    CBMqXMiwocOHECNKnEixokWGEQ4cGDCwwIABAgJsMLAhwwYPKFEmWNnAQYSBB/79MxDzXwSZ
    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
    BAQAOw==
   " >

<br/><br/>
Ref: http://www.unixreview.com/documents/s=8217/ur0305h/]]>
      
   </content>
</entry>
<entry>
   <title>Javascript array sort with custom comparators</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/08/javascript_array_sort_with_cus.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.22</id>
   
   <published>2007-08-18T05:47:42Z</published>
   <updated>2007-08-25T06:09:31Z</updated>
   
   <summary>Did you know that you can write custom comparator to sort an array in javascript? By default, it is a string sort var arr1 = [10,1,5,4,3,2]; arr1.sort(); // 1,10,2,3,5 Say we want a numeric sort, we could write a custom...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[Did you know that you can write custom comparator to sort an array in javascript?<br/><br/>

By default, it is a string sort<br/>
 <pre>var arr1 = [10,1,5,4,3,2];
arr1.sort(); // 1,10,2,3,5</pre>

Say we want a numeric sort, we could write a custom comparator
<pre>function numAscending(a, b) 
{ 
    return a - b; 
}
var arr1 = [10,1,5,4,3,2];
arr1.sort(numAscending); // 1, 2, 3, 4, 5 10</pre>]]>
      
   </content>
</entry>
<entry>
   <title>custom keywords in firefox</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/08/custom_keywords_in_firefox.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.16</id>
   
   <published>2007-08-11T06:10:41Z</published>
   <updated>2007-08-11T06:23:55Z</updated>
   
   <summary>How do you get work done faster? By typing less - My requirement was to jump to a specific url in bugzilla given a bug number, and it would be nice - if you can just type &quot;bug 1122&quot; in...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[How do you get work done faster? By typing less -

My requirement was to jump to a specific url in bugzilla given a bug number, and it would be nice - if you can just type "bug 1122" in the address bar and it jumps to the url http://bugzilla.domain.com/show_bug.cgi?id=1122

I realized today, that, it is a feature in firefox which I had not noticed until now. It is called "<strong>Keyword Searches</strong>"

<em><strong>The feature enables you to define a "keyword" for a bookmark which has a "%s" in it for substitution.</strong></em>

Now, my bookmark will look like http://bugzilla.domain.com/show_bug.cgi?id=%s, and the bookmark itself has the keyword "bug"

More information at the <a href="http://kb.mozillazine.org/Using_keyword_searches">mozilla knowledge base</a>]]>
      
   </content>
</entry>
<entry>
   <title>32bit firefox for 64bit ubuntu - all the plugins you need</title>
   <link rel="alternate" type="text/html" href="http://developer.spikesource.com/blogs/vsrini/2007/08/32bit_firefox_for_64bit_ubuntu.html" />
   <id>tag:developer.spikesource.com,2007:/blogs/vsrini//1.15</id>
   
   <published>2007-08-10T23:41:55Z</published>
   <updated>2007-08-10T23:47:00Z</updated>
   
   <summary>I was almost tired of java, flash and other plugins I need not working on my amd64 machine with a 64-bit kubuntu installed on it, when Calvin pointed me to this link. http://ubuntuforums.org/showthread.php?t=202537 This installs 32 bit firefox, all the...</summary>
   <author>
      <name>Vinay Srini</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://developer.spikesource.com/blogs/vsrini/">
      <![CDATA[I was almost tired of java, flash and other plugins I need not working on my amd64 machine with a 64-bit kubuntu installed on it, when <a href="http://developer.spikesource.com/blogs/caustin/">Calvin</a> pointed me to this link.

<a href="http://ubuntuforums.org/showthread.php?t=202537">http://ubuntuforums.org/showthread.php?t=202537</a>

This installs 32 bit firefox, all the dependent libraries, and all the required plugins. One stop shop. The above thread in ubuntu forums points to this script which does all that in one go.

<a href="http://home.comcast.net/~ubuntume/ff32-3in1-5.tar.gz">http://home.comcast.net/~ubuntume/ff32-3in1-5.tar.gz</a>

Just be root when you run the script.

Firefox - rediscover the web.]]>
      
   </content>
</entry>

</feed>
