Friday, July 29, 2005

Learning to use RCS on Windows

Keywords: UNIX, RCS on Windows, Revision Control System, Tutorial

Yesterday, I was faced with the challenge of integrating RCS with Mercury Change Management. RCS is one of many available version control software on UNIX. As such Mercury ITG has out-of-the-box support for RCS. However, it is critical to understand the functioning of the actual software in order to integrate it with ITG. In order to understand the functioning of RCS, I searched the Net looking for tutorials. I found many, but none of them was specifically written keeping in mind Windows users. So, I decided to post what I did.

I had to post the article on my other site, as I originally created the document in MS Word and you know how difficult it is to get MS Word generated HTML to get accepted anywhere. Following the exact steps as given in the article, you can develop a good understanding of the product. The target of this article is to make you learn the basics of RCS on your own.

The article is available at:

Mercury ITG architecture

Keywords: Mercury IT Governance Architecture, ITG, Kintana

Lately I have been working with Mercury IT Governance Center (formerly Kintana). This is not the kind of tools I have been working in past. Its a new experience. And I wanted to share with you tidbits about it. Mercury IT Governance Center, ITG Center hereafter, is an integrated suite of software tools for managing IT demands, prioritizing them and control project deliveries transparently. This is one of the unusual type of tools I have worked with so far, and has a bit of ERP feel. ITG Center comes preloaded with templates based on best practices, which can either be used as-it-is or can be customized to suit the need of a specific organization. Interesting thing about ITG center is that, many of its templates can be used with minimal customization.

Linked below is the top-level design of the tool, as published on the Mercury site.

Click to enlarge

ITG center is based on a modular design. Modules have been desgined to serve different purposes. Some of the ITG center modules are: IT Governance Dashboard, Demand Management, Project Management, Financial Management, Change Management etc. Licences can be purchased for individual modules depending on the requirement. A graphics containng the technical design of ITG Center is available at mercury site.

Click to enlarge

ITG center is based on a 3-tier architecture. The client/presentation tier has two kind of front-ends. One is a standard thin-client (a webbrowser) interface meant for end-users and the other is a Java applet called Workbench meant for developers (called configurators). Middle tier is an Application Server that combines a web server and the core ITG Center engine. Data storage is handled with an Oracle database server. This 3-tier architecture provides for unlimited flexibility in installation and configuration for scalability. ITG center has no internal databases and depends entirely on a Oracle database server. That means increased licensing cost but at the same time that also means increased dependability and availability. It can work with an external web server allowing for increased dependability and availability while at the same time opening possibilities of integration with other existing applications.

It is an interesting tool. I am likely to work with it for some time. You may expect to hear more on this from me. So, stay tuned folks!

Friday, May 27, 2005

BIOS password in Servers

Keywords: Administration tip These days I am involved into one of the most challenging projects of my career. It has been a tremendous learning experience. One very small but significant thing that I learnt today is - Don't attempt protecting the servers with a BIOS password. Well, this may sound strange as we always think adding a password to the BIOS adds one more level of security. Well not really. Any person who can gain physical access to the server can get rid of that password. Besides, adding the password to the BIOS means, you cannot boot the system remotely. Now this is a big setback. Rather you would like everyone to work on the server remotely and no one to have physical access to it. There would be a lot of people who will think otherwise. Logic would be - No physical access, no software access. Well, that can work in smaller organizations with a few servers and one or two administrators. But in case of large organizations and dozens of admins, that approach is not practical. The bottomline is: If you want your servers to be accessed remotely, don't add a password to the BIOS.

Wednesday, May 25, 2005

Fighting SPAM: Bayesian Filtering

SPAM has been the biggest nuisance for the Internet community off late. An estimated 74 percent of email being trasfrred over Internet in the year 2004 was identified as junk. Governments and organizations around the globe have been busy estimating the losses incurred due to SPAM and figuring ways to counter it. On the technology front, researchers and software companies have been finding ways to identify and isolate/eliminate SPAM. Over a period of time this has been a never ending tussle between the SPAMmers and the antispam software developers. Firstly it were simple software that filtered out mails based on a word-list. The administrator would prepare a list of words that will cause an email to be considered SPAM. This worked for sometime, but not long. Spammers soon found ways to dodge these filters. They would write v1agra instead of viagra and p3n1s instead of penis to get past the filter. Clearly, the techniqe couldn't be very successful due to the reason that word-list filters are easy to dodge and a too restrictive word-filter causes false positives, resulting in a loss of legitimate mails. Another techology that has been vastly in use is based on authentication method. Such a software works on a simple challenge-response method. The sender is responded back with a message asking him/her to reply back to a mail. Whereas this method literally gurantees to protect from SPAM, it is not feasible to use it beyond a limit, practically eliminating this as an infeasible solution. There have been other methods to identify SPAM and most of them work on some kind of "Whitelist" or "Blacklist". All such methods require continuous refinement in the list and are not very accurate. Recently, more and more email products are adopting a technology called Bayesian Filtering to fight SPAM. This technolgy is based on the works by Paul Graham []. During the summer of 2002, he stumbled upon the idea of using Bayes Theorm (the work of 18th century English mathemetician Thomas Bayes to eliminate SPAM. Rest, as they say, is history. Bayesian filters as being incorporated in more and more email products because of its accuracy. The thing that sets Bayesian filters apart from the rest is, its ability to learn by itself. According to Paul Graham, a "well taught" Bayesian filter can be as accurate as 99.5 percent, without any false positives. Some of the email products that are using Bayesian Filtering todate:
  • Thunderbird
  • Mozzila
  • GFI MailEssentials
  • TrustedMail
  • SpamBully
  • SpamAssassin
  • SPAM Shredder
  • PlexMailer
  • Safe Express
Some intereting links:

Tuesday, May 24, 2005

Shape of things to come

Keywords: Technology, Techonology for fun Wonder how powerful computers (software in particular) are becoming? How long before they will start ruling us literally? See this: Its just the beginning friends. May be sometime soon they will begin to move our monitor physically with JavaScript code activated from within a Flash movie. Be ready for to find your monitor next to you when you wake up in the morning despite you remember correctly you left it at the dressing table last night. Is it too crazy to be true?

Wednesday, April 06, 2005

Web color palette

Keywords: Internet standards, Web development, Quick reference, Web reference, Web color palette, Color code
Web development has been evolving on a daily basis. One of the primary requirements of a web developer is to use colors that render uniformly across browsers and operating platforms. Netscape designed its web safe color palette of 216 colors very wisely. They set to display each color in six possible intensities of the three primary colors, 0%, 20%, 40%, 60%, 80% and 100%. It may be hard to understand this way but its a really clever way of understanding the selection of colors. For your ease of use, today I bring the links of color palette resources for Netscape browser.

Netscape Color map
Netscape Color Palette Map
Victor Engel's No Dither Netscape Color Palette Image Explanation
RGB color values (with color names)

Hope you enjoy the tools!


Today I was going through what I had posted earlier, and at places it felt like, I started blogging without providing a background. More so because this blog is on general software development issues. To make the content more context-friendly and to help search engines index these pages wisely, now onwards I will be adding categories to my posts. Hopefully, that will add some more value to the content for future visitors.

Monday, April 04, 2005

Teamstudio Script Browser

Its a Monday morning and I have just received a good news. There couldn't have been a better thing to do than share it with you.

Last week I received an email from a colleague of mine who wanted help with a script that will give him a dump of all the fields in a form and related information such as its data type, default value and associated code etc. Last couple of days I had been busy trying to achieve the same. This morning has brought a relief when my boss forwarded me an email that he received from Stephanie Heit, Sales Manager, Teamstudio Europe.

The email was about a product they call Teamstudio Script Browser that TeamStudio calls a LotusScript Code Navigator. From the product page at - "Teamstudio Script Browser is a tool to help you use and navigate the LotusScript code stored within an IBM Lotus Notes database in a way that has never before been possible."

Its a promising product. I still have to review it. I will give the report of the product later. For the time being check it out for yourself from this page.

Wednesday, March 30, 2005

Google, Blogging and future of Open Source

On March 17th Google launched Google Blog, the future of open source. The open source team at Google intends to publish links to all current Google APIs. Looks like Google is all set to topple the way software developers worldwide look for that code of snippet they are in the need of so badly. Welcome to the future of Open Source. Google's R&D center at Bangalore is fresh with new energy. On March 27, Google hired 50 highly competetive engineers who were tried for "creatively, design expertly, and code correctly and efficiently". This is a major shift in the way Google has so far been forming its core developement team. From the sound of it, India has started to get a larger share of the hottest selling cake in the world. Cheers for the young talent that is making the way.

Will code for Rupee

Thursday, March 24, 2005

3 Dimensional Display Devices

One night while I was unable to sleep, possibly after having watched a movie, this idea came to my mind.
How real is the concept of a 3-D display device? We have seen it in comic strips and in movies in some form or the other. I was just wondering as to was it possible at all? And how, if so?
Today I decided to search on the Net to catch up with the developments on this front, if any. One of the pages that came very close was this. It is not quite like what I'd like to see, but the page title touched the subject. Frankly, I didn't dare to read all of it, but after having gone thru it a few sentences, I realized what I was missing.
The concept of 3-D display devices is not much useful without the concept of 3-D input devices. We must be able to tell what we wanna see or what we wanna do. Even if just want to see, we should be able to create the contents. Hmmm... that's my limit. I am no phycist. With my limited knowledge of matters from what I learnt in school days, I thought It was possible to create a cylindrical display device, which if you sit inside it and turn around sitting on a revolving chair, you should be able to see different parts of an object as it would look if you really turned around.
Then came into my mind, the idea of plotting pixels on this device (learnt how they draw on a two dimensional display device in my Computer Graphics classes). Should that be really that difficult? Don't think so. Just that they have to develop a new kind of cartesian system for this. The current cartesian system isn't meant for 3-D devices. Or could be, there something already is there in 3-D geometry I don't know of?
But it is still not that simple. How do you know upto what part of this cylindrical screen at a time a human eye would be able to see. And what happens when the person turns around? For a simple position change, of say .1 radian, in the viewer's position, the co-ordinates of the same physical pixel would have been changed. Now the viewer would expect to see something else on the same pixel where he could see something else a while ago.
Again with my limited knowledge of matters found on earth, I thought it was possible. Afterall, havent we ever seen a Hologram? A hologram does nearly the same, if not exactly. It display different images depending on the angle from which you look at it. Wow! That's the problem solved? Do I have my 3-D display device ready for production? Not really! A hologram typically displays not more than a few images. But, there is the potential. Isn't is all about the evolution? Can't we develop a better matter that can work like a much improved hologram, or a reflector, in this context? And the answer is - It should be possible.
So, the idea of a 3-D display device really seems possible. Of course, initially when these matters are not very fine and can display only upto 10 images from different angles, we can call them low-resolution 3-D display reflector. Say such a reflector can display upto 10 diffrent images and has a display angle of 150 degrees. So that be the factor that will decide the resolution of my dream 3-D display device.
Ah, wish I studied more of Physics, Mathmetics and Chemistry!

Of NN, FF and IE

Ever since Tim Berners Lee invented World Wide Web, the lucrative market of web browsers has been a top priority task for software giants. Surprisingly, one of the most frequently used software for an average computer user, a web browser has always been available for free. Regardless of whies of that, it is clear that capturing the web browser market has been a matter of big efforts. In the early days of net surfing, Mozilla was the name. Then came Netscape technologies with Navigator. Netscape had much success with Netscape Navigator Gold. Many people would swear the cool golden anchor was a hot piece of software then. Netscape ruled. IE started taking over when fifth generation browsers came and by the time IE 6 was out, it had already overtaken NN 6. The scene is changing again. Mozilla FireFox is the latest craze (Current version 1.0.2 is available for download from here). A tiny sleek browser, which doesn't look a single bit less on feature or performance. Microsoft is gearing for a summer 2005 release of IE 7 Beta whereas Netscape has already taken the lead with Netscape 7.2 (download it from here). Which way the browser war will lead to will be known only when IE 7 is out. Till then... Happy FireFoxing....


Google has changed the way we work. Probably, it has been the largest influence on the Internet since Hotmail and Amazon. Personally, I find it easier to look for information I need from google than the local copy stored on my PC, and most often this is the faster approach. But finding information fast on the Internet than on local PC is possible probably because I feel searching rather easy. And I have made my job easier by adding a search form on my home page, which is a local page. Here I would like to share a few basic things about searching with Google.
  • When you are in real hurry, you can save a few seconds by typing your query directly in the address bar. Prepend "" to your query text. It will fetch the results directly. This, of course, uses all the defaults. If you want language selection and content filtering etc, better use the full syntax generated by the site.
  • Use keywords rather than complete phrases. e.g. Festivals India is likely to fetch more precise results than "Indian festivals"
  • Use exact error message if you are looking for its description and put it under double quote. e.g. "Router:Failed to connect to SMTP host". This is more likely to bring up relevent pages than queries based on keywords such as Router Error SMTP failure
  • Google by default does an AND on the tokens in the query text, i.e. it will try to find pages with all the tokens in the query text. If you want to change that, use specific boolean operators.
  • While submitting a complete phrase or sentence for search, google omits commonly used words. Use a plus symbol (+) to include them in the search.
  • Sometimes you remember having seen a page on a particular site with specific information that you need now. Instead of visiting the site and going thru all the pages one by one, use google to do the job. Prepend your query text with "". That syntax causes google to search for the query text only in the pages cached from that site. If Google has cached pages from that site, it will be hundreds times faster and precise than finding the information by manually searching that site yourself.
  • You may use Google as a thesaurus. When uncertain about what a word might mean, you may ask Google to define terms/phrases for you. Use this URL:
Google is much more than just a search engine. Watch out this space. I will be bringing more of Google to you.

Wednesday, March 23, 2005

Hello World!

Hello World! That's how Dennis Ritchie greeted the entire world way back in 1970. Entire software developer fraternity has used this to greet and start anything and everything they do. I am starting this blog keeping in mind a variety of subjects. I would love to focus on techincal topics, subjects related to IT, but may just wander around once in a while. Of course your comments would help me shape it better, in the times to come. Nice friends are nice to have. The idea of this blog came from a friend. I must thank him. Here is my gratitutory thank you, a link to his blog: I also owe a lot to my fellow experts and friends at Experts Exchange (, who have been my source of inspiration for some time now. I have learnt a lot from them, apart from having a good time with them. So here we start the journey. May the forces be with us. Amen!