The War of the Software Giants

•July 9, 2009 • Leave a Comment

I feel that the web has already become a virtual battleground for the two software giants – Google and Microsoft. I recently read an article which says ‘Google drops a nuclear bomb on Microsoft’. Phrases such as these are now very common to seek your attention. As the companies launch their new tools on the web, users around the world are ready to give a first try and deliver a verdict. Some of them however, take a radical approach. I just came across a site Bing vs Google which displays google and bing search results side by side. This is interesting because it is in some ways helping users to decide which tool is giving better result. This is really turning into a dog fight. I had several discussions with my friends on which search engine is better. Though everyone opined that Bing is quite good compared to its ancestors, yet I found almost all of them hold their trust with Google.
Microsoft has not been very fortunate competing with Google in the search engine space. However, with Bing, which is still very nascent, Microsoft has garnered some positive reviews. I am sure, the environment is already heated up with talks of Gazelle and Chrome OS. However, we have to play a waiting game to see these softwares spring to action and decide the better one.

ptzw79unfa

Art of Community Based Software Development

•July 2, 2009 • Leave a Comment

Its one thing to build a software, its another to make it successful. What is involved in creating a great software product? It is not just the catchy technology alone. In an era of social technologies, no product can survive without a community. The community could be users who experiment with the product and provide feedback, it could be developers or programmers who extend the features providing niche capabilities, build applications using the api’s or even market the product through social media like blogs, del.icio.us bookmarks etc.
Having said this, the next thought that immediately springs up is should we then concentrate on building a platform and not just a standalone product? I believe, it is ‘YES’. Take the example of iPhone or Linux in general. The greatest thing about iPhone apart from it being a wondrous gadget is that it allows anyone to use the framework provided by Apple and develop applications for it which other users can use. Linux is a glorious example of a community driven product which is highly successful.
SAP to a very large extent depends on its community of partners to extend the functionality of its business application for its customers. The SDN community is vibrant and has been burgeoning ever since its genesis. Adobe has now build a community for developing and sharing applications built using the Flex technology.
This seemingly has put us into a new era of participation where the boundaries of software development is not limited within the walls of our office but can span endless possibilities. The only hindrance is mindset. If we are open enough to build not just for the customers but also for the community, we will not only build better products but also better culture.

Statistics – Mathematics for the digital age

•June 29, 2009 • Leave a Comment

In a short TED talk , Arthur Benjamin brings out one interesting fact that Statistics should be more emphasized than calculus in the digital age. I truly agree. Most of the great products that we use in our day to day life are fundamentally based on some statistics. Take for example how Google ranks the search results. All conclusions drawn out of collective intelligence are but based on some statistics.
Whenever we brainstorm to decide what new features we have to build for our product, we depend on some simple statistics of how many customers have requested for that feature and how critical is that feature for their usage. Statistics is ofcourse an indispensable tool without which it is difficult to imagine how we would have come so far with all the technological advancements. Technology is but a driver which turns Statistics into something usable for all of us. However, we even cannot undermine the importance of Calculus and that Arthur clearly exemplifies with all its uses.
On a very funny note, Arthur points out that if all of us knew about probability and statistics we would not have landed upon the current economic mess. I would reserve any thoughts on the current economic turmoil but what I do agree is to the fact that we should emphasize such subjects of which we can make meaningful usage in our day to day life.

Lingering doubts about Linux

•June 27, 2009 • 4 Comments

Linux is not for the masses. That’s what many people think about this ever-growing operating system. But what is the plague in the adoption of Linux? I would have agreed six years back that the technicalities are quite involved in Linux and any home user would not be able to get hold of it. But look at any linux desktop now. Its simple, clean and contains everything a home user would ever want. Hardware and driver support has improved making it all easier for end users. Fact is, most users are vaguely familiar with Linux or are apprehensive about it thinking that it is only meant for high end enterprise usage or geeky programmers. I believe we need to spread this word that Linux which was thought to be programmer friendly operating system, which as a matter of fact still holds true, is also apt for any home users. I believe that with popular vendors like Dell, HP and Lenovo coming out with Linux pre-installed on their laptops and desktops, the consumers are now blessed with an alternative. The current recession coupled with the ever dwindling performance of Vista has poised the adoption of Linux as a prime-time consumer desktop operating system. However, let’s also give credit to the Redmond giant for pulling the scars out of Windows Vista and turning it into Windows 7 and as Mark Shuttleworth’s puts it elegantly, that

“Linux will need to raise its game in the face of this revived Windows experience”.

What seems to be a probable hint is that a healthy competition from Microsoft would only spur more innovation in the whole chain which is good for Linux.

As a concluding remark, I would like to add my thoughts of what can be improved in the current Linux distros for increased consumer adoption. First and foremost is better multimedia support. Although getting the right software is not difficult, it would be better if we could prepackage the audio/video support. Mark Shuttleworth already pointed out about Consistent Packaging in Linux. From my point of view, this would really remove many of the confusions regarding software installations on Linux systems. Also improved driver support from Hardware vendors should in general help the adoption of Linux among the masses.

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine

What we can learn from Apple?

•June 24, 2009 • Leave a Comment

I always appreciate the kind of intuitiveness and simplicity Apple brings to its products. The company has always lived up to its slogan of ‘Think Different‘. Steve Perlman who led much of Macintosh’s multimedia development puts it in a very simple sentence

Too many engineers don’t think about how to turn the bundles of technology they create into a usable, intuitive gadget that they can take home and use.”

Quite often we overengineer things. We build tons of features most of which will never be used by the end user.  At the end, we land up owning a mess. Apple is one company which has given users what they want before even they know about it. I could never imagine how easy it is to shuffle through the songs in an ipod nano by just moving my finger around a circular pad. I could never obtain the same comfort on any other music player. Undoubtedly, Steve’s unique vision is not to focus on a brand but really develop a cult.

We never know what Apple is focusing on next. I could only imagine it will not be anything conventional. That’s the Apple Way.

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine

DevCamp Bangalore 2

•June 23, 2009 • Leave a Comment

When DevCamp 2 was held in Bangalore this year, a lot of interesting presentations came up. Among others I particularly liked Neal Ford’s presentation on visualization tools for code metrics and productive programmer and also the presentation on Sahi which is a web testing tool. Each session was timed quite well and we had lots to take away after each session.

Sahi is a tool for automation and testing of web applications with record and playback feature and runs on any modern browser with javascript support. Mr. Narayan Raman, who is the founder of Sahi software, introduced the capabilities of Sahi by running through a live demo of automating GMail.  The tool comes with a hoard of exciting features and is available for free downloads.  A flash demo is available from Sahi’s website for getting a first look into the tool’s capabilities.

Following Sahi, Neal Ford gave a presentation on Visualization tools for code metrics.  To be frank, I have heard of all the jargons such as code metrics, cyclomatic complexity etc. but never really used them in practice or never really understood the real purpose of using such tools until this session. He talked in brief about a number of visualization tools like Source Monitor, Panopticode, Graphviz, JAR analyser, Toxicity chart, Code Crawler, Codecity , Citylyzer etc. What was interesting to learn was the kind of information we can decipher from the visualization information. The presentation slides are available for public viewing from Neal Ford’s site.

Neal Ford also delivered another session and that was on Productive Programmer. There is a book by that name authored by him. This session was really interesting not because of the content alone but also because of Neal’s sense of humor while dealing with repetitive and boring tasks. He talks about a few tips that we can employ in our everyday chores and become more productive.

The DevCamp chapter not only brings the ideas from people but also is a nice venue for socializing with a diversified crowd from hackers to programmers to architects.

For a detailed list of all the sessions, please have a look at devcamp.in

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine

Tagging redefined with ‘CommonTag’

•June 22, 2009 • Leave a Comment

commontagWhen the concept of tags was first borne, it was only tailored towards categorizing content so as to ease searching and browsing related content. Tags also became a social tool allowing a user to share content with another user. Visualization tools over tags such as tag clouds helped anyone to find out the most accessed content on any given site.

Sometime back Microsoft came up with the concept of ‘Smart Tags’.  A ‘Smart Tag’ is more than a hyperlink on a page. Whenever the cursor hovers over a word identified as a ‘Smart Tag’ a drop down list appears with selection of links related to the word. Though unique the concept suffered adoption because the website developers were apprehensive about Microsoft’s control over web content since the words and associated links are selected by Microsoft.

On any social site, tags remain practically as a tool to allow users to browse related content within the same site but not outside of it. With Linked data, the web is geared towards a new era where data from multiple sources are linked together. A similar concept has developed along the thoughts of linking data and is called ‘Common Tag’. Unlike free-text tags which are constrained within a single site, Common Tags span over the entire web and refer to content which is unique and well defined. Since Common Tags are complete with meta data and URLs, they are defined using RDF, a standard format for expressing structured data within HTML.  What does it mean for us then? With ‘Common Tags’ we could not only identify the concepts from our content but also any external content and organize them in a better way.

The ‘Common Tag’ format is jointly developed by Adaptive Blue, DERI, Yahoo, Faviki, Freebase, Zemanta and Zigtag. The companies provide services for users to get started with publishing content using ‘Common Tags’. For example, Zemanta provides a Firefox addon which identifies potential content that can serve as ‘Common Tag’ when you start editing. This holds good from writing emails to editing content on a blog.  A quick start guide is also available from the ‘Common Tag’ project site. The project page also lists the current applications that support the ‘Common Tag’ format.

What is interesting in all of these is the shift in the social paradigm. Clearly the focus is now in unifying the whole web content rather than a single site.

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine

Four important sites to help you with your Fedora 11 installation

•June 21, 2009 • 1 Comment

The Fedora 11 comes with a very minimal set of softwares if one is installing it from the Live cd. Most of the other softwares( music players, codecs, office softwares etc) need to be installed manually either from the command line using YUM or from the Add/Remove Programs located in System->Administration. I googled for any available guides and found a bunch of them. Here I am listing only the best four guides that are crisp and help solve most of the installation tasks in Fedora 11.

1. Fedora 11 installation and post installation guide
This is a 14 page article which talks about how to install/upgrade fedora and other software installation. The articles are sequenced perfectly and even provides screenshots for some of the installation steps. I found this article quite comprehensive and the step by step explanation of each command very useful. If anyone is looking for upgrading/installing fedora, this one will suffice all the basic needs.

2. Personal Fedora 11 installation guide
This article also talks about installating common softwares on fedora 11. However, this is less comprehensive than the previous one. Read the author’s disclaimer at the beginning of the article.

3. Common Fedora 11 bugs
If you are not able to get something working on fedora 11, then this is one place you can look for. The site also provides fixes or workarounds for the problems.

4. Fedora guide
This was the first site I landed upon while trying to install an mp3player. The site is comprehensive and not only does it provide instructions for software installations but also commands to perform some common tasks. It also provides information on common tweaks as well as some tips and tricks to get the most out of your fedora installation. All in all this site caters to users from beginning to advanced configuration of your fedora OS.

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine

Linked Data – The Birth of a new Web

•June 17, 2009 • Leave a Comment

lod-datasets_2008-03-31I recently started following the concept of Linked Data and I must say this turned out to be really interesting. The World Wide Web is a virtual space of information and data. The concept of linked data as it turns out is to link related data that has not been previously linked before. Though simple, the concept spawns a humongous amount of open ground for harmonizing information spread across the vast span of the world wide web. Let’s take for an instant a simple entity, say Dan Brown’s The Da Vinci Code. Whenever anyone sees this data, one might be immediately interested in reading about the reviews or might be curious to find a community of people who like reading Dan Brown’s novels. The Web of Data tries to bring forth such a platform where data could be linked in a fashion which provides the user with the ability to drill from one data to another related data and so on and so forth. The beauty of the whole thing is that we do not need a dedicated team of people to identify and link related data but it could be linked by anyone else like how information is published in Wikipedia. That’s what we call Crowdsourcing or Wisdom of the crowds.  Although mashing of information from various sources has been made possible with the advent of Web Services, but Linked Data brings the links down to the data level, so that it provides a uniform and harmonious access to any user.
With linked data, now the opportunities are lined up for new tools and browsers for publishing and viewing linked data which is not currently possible with HTML supported browsers. A few tools are already listed in http://linkeddata.org/tools.

I think with all the recent developments in Linked Data, this is truly going to be the birth of the new web.

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine

Imagining Indian IT

•June 15, 2009 • 1 Comment

Nandan Nilekani’s TED Talk will earn the attention of many people for his broad category of ideas that is shaping our country.  Talking in his lines, I have compiled a version of such ideas for our Indian IT service sector.

Ideas that have arrived:
1. Empowering people from being useful resources to remotely productive ‘BENCH’ resources with the hope that some big business house with tons to shell out would look at the so-called bench strength and sign a contract. After the contract is signed, only a few hundreds will work and the others continue to be in a state of blissful inertia of rest.

2. Growth in Real Estate. If we ever decide to list Wonders Of Modern IT Office Buildings, we are definitely capturing a few of the slots.1023906008_2788ab1364

3. Empowering employees to travel across the world at the cost of client’s money. In business terminology, we call it ‘onsite’ opportunity.

4. Higher entropy of Managers and HR Partners in the system. To name a few apart from the usual names like Development Managers, Project Managers are Bench Managers, Domain Managers, Partner Managers, Evangelist managers, etc. We Indians are good at innovating new positions.

5. Improved local transport for non office goers. During off-duty hours, the office shuttles and cabs add to the relief of non office goers in transportation.

Ideas in progress:
1. Driving our bench strength to productivity: If the bench strength could be used for some productive purposes, we would have atleast a few products wholly and solely ‘Made in India’.

2. Brand Image: From a low cost outsourcing centre to a centre of innovation and excellence.

3. Diversified job opportunities: From a focus of creating jobs in IT and BPO’s to other fields like Aeronautics, Aerospace, Infrastructure, etc. Are we lacking in fields? ‘No’.

4. Cities as engines of growth: Clearly, Mr. Nilekani pointed out one important factor and that is making our cities as engines of growth but in addition to that, we also need to make sure that not only such an effort be limited to only a few cities but spread across the vast span of India.

Ideas in Conflict:
1. Conflicting Ideologies/vision at different levels and even at the same level of organization’s hierarchy.

2. Bench Reforms: Job protection for people in benches.

3. Self Sufficient: Decrease your dependence on the West for projects and contracts.

4. Job Satisfaction leading to job switches. Are you caught in a wrong job?

5. Influence of english on our mother tongue.

Ideas in Anticipation:
1. Regulated Financial institutions. We should learn from the West about how not to manage wealth.

Add to: Facebook | Digg | Del.icio.us | Stumbleupon | Reddit | Blinklist | Twitter | Technorati | Furl | Newsvine