Sunday, September 30, 2007

Challanging Status Quo and Execution...

It is always nice to hear words like - "Challenging status quo..." in a mission statement, not many organizations actually take on the feat. Understandably so. There is always a risk in venturing into uncharted waters and success in one market does not always guarantee success in another.


The difference in having a grand vision and failed vision is really the - EXECUTION.



Let's turn to some successes in a field which I am not really familiar with but I am intrigued because the business model is dependent on the goodness of human nature. Hard to come by huh...?



The industry is - MICRO CREDIT or MICRO FINANCE. I started reading about its success in the possibly one of the poorest countries on earth - BANGLADESH. You expect with the scarcity of financial resources, there will be the obvious human nature to grab and run.



Well, that's what everybody thought, till Prof. Muhammad Yunus and Grameen Bank came along. Grameen bank serves the poor of the poor in rural Bangladesh. Uses an unheard of strategy - "Lending without collateral". Well, I can safely assume that since the individual loans were not very large, it would be less risky and the chances are the borrower would not have anything put as collateral anyway. But add up several thousands on those loans... the risk becomes enormous.



There are other strategy which Professor Yunus applied, which were so different from conventional banks, like focusing on women as borrowers than men... [Read more...]



So that was Bangladesh, but would the same hold true for some other market. I recently read in Atlanta Constitution Journal, about a success of Micro lending in Guatemala.



Ok... Ok... now where is the catch? You know, I will extend this example to IT field.


The points - I carry over from Micro Credit is - trusting the goodness of human nature and applying success from one market to another.

Offshore/Near shoring has proved beyond doubt that it is possible to perform software development work anywhere and anytime.



But it is also a sad truth is the same industry that lot of people have to work long hours. Some of it to obtain experience, gain customer confidence and business and explore new technologies but some because of lack of better term - "projects that could have been better managed". Having said that, it is nature of software development. Progressive elaboration is the inherent gene. The more people see, the more people want to make it better. So it is not always in the control of the stakeholders that software developers directly interact with.


The industry has worked hard to find solution for this issue as the software systems get more and more complicated. Instead of being an monolithic application in control of a single organization, we are now looking at the age of mish-mash, landing pages and composite applications. But that is a topic for a different day.


So back to the mantra of "work life balance". One of the enabler for work life balance is - "Telecommuting". There is no work in the world better suited for this enabler than - Software Development.


Now, back to my argument goodness of human nature. The belief more often than not, people will try to do the right thing.


The argument, if it works in western countries, it MAY not WORK in an offshore environment. My argument - is to believe in the GEEKy nature of software development. A Geek is a geek not matter where s/he is let loose. A geek takes pleasure in getting things accomplished and doing it well.



Software Development is a field of knowledge workers. It is in the interest of the a software development organization willing to grow to attract and retain the best of the lot and for the right reasons.


Now that we have a VISION of a global diverse and dispersed network of technology gurus, let's looking a possible execution model. Strangely enough, it is nothing new and is not alien to companies with ISO:9001 and CMMi level compliance.



It is the use of METRICS. Establish performance metrics and clear guidelines for telecommuting employees. For example:



  • The employee must a proven and establish record of on time delivery and accurate reporting.

  • The employee already must have high speed Internet access at home which s/he is willing to use for business purposes.

  • The employee must possess a computer capable of remotely accessing the employee's desktop at work. The actual work will be done on the desktop at work.

  • If the developer running late on a task on a weekly basis, s/he is prohibited from telecommuting.

  • Allow limited days in a week for telecommuting as a starter.
So on and so forth...


On the flip side, there is a investment on the side of the organization in terms of raising the level of infrastructure. But what is gains is more productive employees in return.



From end of the employee, it is ability to save on a long commute time and ability to address family needs at times. The caveat is that the individual has to see this an incentive and not as a way to make the employee work longer hours. Also, the individual has to drop the sense of entitlement like getting company provided Internet connection just for telecommuting purposes.

All deals are based on give and take as long both sides understand the benefits.

Has it been done before? Yes, absolutely.

IBM touts of an global workforce which is built on flex hours and telecommuting. Read about the success at BestBuy.com, the online division of the electronics retailer in the US. (Read more on... "Smashing the clock"; Cover Story; Business Week - Dec 11, 2006)



If not true, anywhere else... true in India. Most women have tendency to take a break work in life changing situation like - marriage or having a child.

Though, whole premise of "work life balance", is giving priority to the family. But what if the organization is able to bring the talent back on no matter wherever in the world she is. It is a win-win situation for the employees and the organization.

Finally, a statistic recently published on concentration of IT/Software Development in India on rediff.com in the article - IT in India: Big successes, bigger gaps

  • Seven cities accounted for a whopping 95 per cent -- Bangalore (33 per cent), the National Capital Region (15 per cent), Chennai (14 per cent), Hyderabad (13 per cent), Pune (10 per cent), Navi Mumbai (8 per cent) and Kolkata (2 per cent).


The state of infrastructure in some of these cities may be something to write home about. But I can guarantee, if organizations based in these cities have probably already established telecommuting options for their workforce.

So for organizations, who haven't I would say wake up, before the heat gets turned on and this benefit becomes so... 2007.

Thursday, September 27, 2007

Sliverlight and Google Gears and AIR

Once again, it seems to the battle of the giants. Two fronts - Google vs. Microsoft. Competing technologies - Google Gears vs. Silverlight.

Both being browser based plug-ins to enable rich and compelling cross platform client experience. The grand vision is to use the web and desktop so seamlessly that the boundaries get blurred. But looking closely that's where the commonality ends.

Microsoft Silvelight(tm) seems to be more targeted towards delivering the rich client interface, a easy programming paradigm offered by Windows Presentation Framework (WPF) to the browser. Currently version 1.0 and 1.1 in pre-alpha, the vision is expected to be delivered to early 2008. Having said that, the developer tools available to enable Silverlight comes with Microsoft Visual Studio 2008 or a separately licensed tool as Microsoft Expression. Of course, this being true as I understand it now. Things may change as we get closer to release.

Google Gears on the other hand is shot at the basic limitation of a web hosted/delivered application. The limitation being, that web application DO NOT work offline. Google Gears provides components such as LocalServer, Database and WorkerPool to make the experience of being online or offline indistinguishable.

There is a third front too... from Adobe. While Microsoft Silverlight is intended to launch attacks into Adobe Flash (or latest avatar Flex) niche of compelling graphic content on the web, Abode has its eyes set on helping their loyal user base capture the desktop with AIR (Adobe Integrated Runtime).


All of these technologies use AJAX in some form or another and are founded on delivering updated content from the web.

It remains to be seen if any one of the destined to dominate the web or the developer community will find a way to leverage all these technologies to benefits the user. I can very well imagine an application which will user XAML to deliver content to AIR and where Google Gears is used to store local information which syncs with the backend when connected. But can the competitiors?

Tuesday, May 08, 2007

Windows Vista and Slow Internet Connections

On April 24 2007, I brought a new laptop (Acer Aspire 5100) pre-loaded with Microsoft Vista - Home Premium edition from my local Circuit City store for $669.00 + 6% tax. There was a $100.00 mail-in-rebate to make the deal sweeter.

As a previous owner of a Acer products (Acer Aspire 3000 laptop in 2005 and 19" LCD monitor this February), I found the products to have good performance.

I must admit, I see to have the incredible (bad) luck of being stuck with a lemons first time around when it comes to buying Acer laptops. Fortunately for me, Circuit City readily exchanged them with some inspection and replacements have worked very well. (Let me know, there is anybody out there that shares the same experience.)

First time, it was hard disk crash within 24 hours after the purchase. This time around it was the Wireless Ethernet Card. It kept dropping connections several times within span of a minute or so. Finally after a week of fighting the beast with replacing drivers, configure settings, I gave up and got a replacement from Circuit City, this weekend.

The wireless connection in the new laptop stayed strong but the internet connection was dragging its feet like a snail bearing a 2-ton iron core. Some websites just did not come up at times - like google.com or msn.com. Both IE and Firefox exhibited the same behaviour.

Add to frustration the machines with Windows XP and Linux ran just fine. After much research on the web the blame game continued on the cause. Possible suspects: the preloaded Norton AntiVirus and Internet Security because of phishing filters and double firewalls and IPv6 configuration conflicts. Turning them off including Vista's own security features did not help.

Though the problem looked like a typical DNS issues but I was not willing to accept reasoning as a cause for this. Two different machines with two different OSes on the same network were working just fine.

After two long nights, I decided to take the route to configure DNS server entries manually. I looked at the auto configuration DNS provided by the router and it included just the IP address of the gateway (or the router itself).

I decided to manually configure the DNS entries which were provided by ISP on the laptop itself and Voila !!! It started to working like a breeze.

So in summary -

Symptoms:
Slow Internet connection on Microsoft Vista (in my case Home Premium Edition).

Possible Cause in my case:
My wireless router was overloaded with DNS requests and could not service them all.

Additional causes
Multiple Phishing filters and firewalls.

Solution:
Check using ipconfig/all command on Vista command prompt to check the DNS server entry. If you only see an single entry for the wireless router, it is time to manually configure the DNS entries for the Wirless Card. You can do that by configuring the TCP/IP v4 settings.

I have additionally disabled the IPv6 support on the Wireless card and have the Norton Phishing filter off. They did not make any difference without the DSN entries.

This worked for me and hopefully, it should work for you as well.