Monday, July 23, 2007

Consolidate to survive

There are rumors of newly spun Nokia-Siemens Networks (NSN) taking over Tellabs in an effort to garner share in the optical and FTTN/FTTH markets in the US. This might make sense as both have complementary product strategies and common European roots. The lone vendor standing out in the crowd seems to be Juniper. Let’s watch and see what happens to Juniper in the long run!

Sun CTO Greg Papadopoulos articulates on his blog that the world needs only 5 computers(Google, Microsoft, Yahoo, Amazon, eBay and Salesforce. That’s O(5) according to him!). Similarly, with the consolidations happening in the networking industry, I feel the world needs only 5 equipment vendors: Cisco, Ericsson, Nokia Siemens Networks, Huawei, Motorola/Qualcomm and Alcatel-Lucent. That's O(5) according to me!).

SunRockets demise

SunRocket, providers of VOIP services recently announced their bankruptcy. Thousands of SunRocket’s subscribers were left in a lurch with no telephone service. Today, the telephone is a basic service essential for customers: individual subscribers, small business owners or college students. This spectrum of subscribers in most cases draw their livelihood using a telephone. These cost-sensitive subscribers get easily wooed to low-cost VOIP services provided by “startup” providers. But how do subscribers protect themselves in situations like these? SunRocket had no transition plan for their customers and all they were left with was with a notice on their website. On account of the subscribers, the following should be addressed.

  • FCC not having a policy to protect subscribers in cases like these
  • VC firms backing up companies providing essential services should be held responsible. Mayfield Ventures which backed SunRocket has conveniently sidelined itself! Lack of business planning was one of the major reasons for their demise
  • There should be minimum capital with the company at all times to accommodate these situations
  • There should be clear directives to these companies to transition subscribers to another provider in case of a failure

Do you want your essential services managed and operated by a “startup”? I am not sure. Imagine you entrust your electricity services or your heart pacemaker in the hands of a “startup”? Would you do that?

That raises the other important question. Does this mean we are at the disposal of the big traditional cable and telephone companies? With the plethora of consolidations happening in the market place, I feel we do. This is a classic example of how difficult it is to be a pure-play VOIP provider in a quad-play world. It’s going to be a tough business for providers like these and these companies need to get some tips from “Swim with the sharks without being eaten alive” to stay afloat and be profitable.

Tuesday, July 10, 2007

Interesting puzzle II

First, consider a function P(x) where:
  P(x) returns:
true if the number of 1 bits set in the
binary representation of x is prime,

false otherwise.
For example, P(239) returns true, while P(51) returns false.

Next, consider the following function prime_bits:
  uint64_t prime_bits(uint64_t a, uint64_t b);
A call to prime_bits(a, b) returns the number of values between a and b inclusive for which P(x) is true. For example, prime_bits(4, 10) returns 5, while prime_bits(137, 31415926535897) returns 7753256197126. Your job is to implement the prime_bits function.

Your implementation should be efficient, and it should be wrapped up nicely such that one can specify a and b on the commandline when running your program. You may expect the range of a and b to be limited to non-negative 64-bit integers, though it would certainly be uncouth for your algorithm to break down for larger values.

Your implementation should have a running time faster than O(n), where n is b - a.

Interesting puzzle I

There are 9 casinos, laid out in the following configuration, with the lines between them representing overnight travel routes:
1 ---- 2 ---- 3
| | |
| | |
4 ---- 5 ---- 6
| | |
| | |
7 ---- 8 ---- 9
On an otherwise uneventful visit to one of these casinos, your dear mother has had the misfortune to be enslaved by an evil gambling monster. I call him Gamblor, and it is time to snatch her away from his neon claws.[1]

Unfortunately, Gamblor demands the payment of a great deal of money in return for releasing his hostage.

Luckily, you are a psychic computer scientist. With your powers, you can predict in advance over the next 30 days how much you would win (or lose) if you played at a particular casino on that day. This schedule of winnings is represented by the following nine 30-element arrays:
wins1 = [ 53,-84, 50,-73, 54, 60, 74, 22,-63,-78, 75, 72,
-46, 99,-33, 24, 6,-66, 77,-61,-60,-46,-52, 84,
91,-21,-52,-72,-39,-41]
wins2 = [ 77,-86,-25, 27,-59,-71,-13,-85, 50, 24,-63, 26,
-4,-10, 25, 62,-85,-68, 96, 92,-29,-64,-54, 18,
-79,-62, 97,-32,-35,-42]
wins3 = [ 27,-57,-28,-98, 69, 12,-70,-43, 27, 80, 80, 64,
6,-23,-45,-68,-60,-31,-36,-63,-39, 34,-27, 7,
-47, -7, 44,-50, 60,-90]
wins4 = [ 7,-12,-48, 79,-11,-78, -8, 19,-21,-81, -1,-40,
83,-95, 36,-62,-63, 76, 6, 0,-87, 67,-66,-15,
-26,-14, 78,-81, 36, 38]
wins5 = [-71,-56,-73,-20,-77, 15, 2, 14,-66, 81, 33, 33,
-59, 16, 37, 77, 53, 73, 53,-40,-26, 66,-73, 7,
-48, 1, 93,-70, 19, 30]
wins6 = [ 68, 47, 73, 94,-72, 96, 10, 30, 11, 44, 11,-56,
-23, 51, 60,-86, 29, 13, 87,-17, 73,-39,-51,-99,
68, 1, 1, 62, 30,-79]
wins7 = [ -8, -1, 68,-34, -7, 96,-37,-96, 26, 73, 47,-62,
-83,-76, 89, 77,-62, 18, -9,-75,-99,-36,-14,-50,
-36,-45, 50, 64,-83,-19]
wins8 = [ 85, 9, 79, 53, 75,-28, 49,-62,-25,-24,-89,-77,
13,-72,-54, 2,-95,-17,-80, -5, 8,-79, 59, 93,
-30,-77,-51,-79, 87,-35]
wins9 = [ 1, 72, 74,-20, 26, 49, 52,-25, 86,-72, 50, 97,
-50,-36,-74, -4, 65,-70, 78, 85, 25,-14,-93,-16,
-20,-24, 7, 28, -3, -5]
Travel routes between the casinos are represented by the following adjoinment matrix:
adj = [[1, 1, 0, 1, 0, 0, 0, 0, 0],
[1, 1, 1, 0, 1, 0, 0, 0, 0],
[0, 1, 1, 0, 0, 1, 0, 0, 0],
[1, 0, 0, 1, 1, 0, 1, 0, 0],
[0, 1, 0, 1, 1, 1, 0, 1, 0],
[0, 0, 1, 0, 1, 1, 0, 0, 1],
[0, 0, 0, 1, 0, 0, 1, 1, 0],
[0, 0, 0, 0, 1, 0, 1, 1, 1],
[0, 0, 0, 0, 0, 1, 0, 1, 1]]
You begin on the first day at the location of casino 1.

For example, if you were at casino #1 on day 1, you would win $53 if you decided to play. Later, if you were at casino #3 on day 4, you would lose $98 if you decided to play. Since you can only travel the distance of one route every night, you cannot reach all the casinos right away - e.g. you would not be able to play at casino #6 on the first day to win $68.

The casino owners don't like your special abilities, but they have agreed to let you play subject to the following conditions:
  • At the beginning of the 30 days, you may either begin playing at your current casino immediately or decide to wait until the next day.
  • Once you begin playing, you must play each consecutive day until you stop.
  • Once you stop playing, you may not play again.
Each night after playing or not playing, you may either stay at your current location or travel to an immediately adjoining casino. You may travel overnight between casinos regardless of whether or not you have played that day.

You cannot play a fraction of a day; if a particular day is one where you have chosen to play, you will earn the predicted win or loss for that day.

You wish to determine how many N >= 0 days to not play, how many subsequent M >= 0 consecutive days to play (and how many remaining K >= 0 days you also don't play), and the path to travel between casinos during this 30-day time period such that you maximize your total winnings.

Saturday, June 02, 2007

What Every Computer Scientist Should Know About Floating-Point Arithmetic:

What Every Computer Scientist Should Know About Floating-Point Arithmetic:
http://www.esatechnology.com/library/math/floatingmath.pdf

Tuesday, April 17, 2007

In rememberence for the victims of the Virginia Tech tragedy

We will continue to invent the future through our blood and tears and through all our sadness ... We are the Hokies ...
-- Nikki Giovanni, University Distinguished Professor at Virginia Tech, poet, activist

Read the spirited address of Nikki to the students of Virginia Tech.

ॐ शांति शांति
वासुदेव कुटुम्बकम ('The whole of earth is a family')

Thursday, April 05, 2007

Nice Web 2.0 video that your grandmother can understand

http://www.youtube.com/watch?v=6gmP4nk0EOE

How long will I take to transfer a petabyte from my home

1 petabyte = 1000 terabytes = 1000,000 gigabytes = 1000,000,000 megabytes = 8000,000,000 megabits

My DSL connection is 2Mbit/sec on average

So to transfer 1 petabyte from my home it will take approximately 127 years!

USPS can do it much faster than this for sure if you have a drive with that storage ;-)

Wednesday, April 04, 2007

Gore challenges Embedded Designers at ESC 2007

Source EE Times

Al Gore's keynote address at the Embedded Systems Conference in San Jose stressed the role of his audience in dealing with the climate crisis, which he referred to as "the moral imperative of our day" and compared it to the launching of Sputnik by the Soviet Union. "For the most part, the effect of population on our climate is balancing itself out over many years, while technology has dramatically accelerated the rate of which the climate has been affected over the past 50 years," he said. "We need to have a much finer-grain mix of money and intelligence in generating our public policies that affect this crisis." Designers must rethink systems to eliminate the "grossly inefficient systems running or energy economy," and create architectures that are built around the idea of energy efficiency, he said. Among his recommendations was to incorporate parallel processing in our day-to-day lives to "alleviate inefficient computing paradigms." Gore also noted the loss of interest in science and engineering among U.S. students, and that designers can impact this trend by displaying the way engineers can change the world and avoid crisis. If the threat level posed by climate change could equal that of Sputnik, the concept could achieve a "moral authority" for change, he said. "Once the possible threat was understood, President Kennedy's goal of landing a man on the moon was achieved fairly quickly."

Technology future is bright

Technology advocate and innovator Ray Kurzweil discussed the law of accelerating returns with Houston Chronicle science writer Eric Berger before his speech at the University of Houston on Wednesday. During the interview, Kurzweil said the future, or the overall impact of information technology, can be predicted because we know it doubles in power every year. "We multiply the price performance, the capacity, and the bandwidth of all these different technologies by a factor of a billion in the next 25 years--if you look at how influential these are already--you can imagine what it's going to be like when they're a billion times stronger, and how profoundly it's going to impact our lives," he said. Kurzweil expects human intelligence to be mastered, as several hundred more brain regions will be modeled and simulated in the next 20 years. He does not view the emergence of artificial intelligence in our world as machines taking over, but as an extension of human civilization. "This is already a human-machine civilization. Our machines are part of our world, and they already extend our intelligence," Kurzweil said. "Every time you use a search engine you're expanding human intelligence, and very little science can be done today without computers. And as computers become more intelligent and more powerful, we're expanding our horizons. In my mind, that's really what it means to be human." Kurzweil also elaborated on his vision for health and longevity, which he discusses in his book, "The Singularity Is Near."

Open Source GPLv3

The Free Software Foundation (FSF) will release the third discussion draft on the GNU General Public License on March 28, amid questions of whether the license will be doomed by the attempt to prevent loopholes like the one Microsoft and Novell were able to exploit to form an alliance. According to GPLv3, "If any entity that distributes the software arranges to protect a particular group from patents regarding that software, it must protect everyone," says open source expert Bruce Perens. However, Linux-Watch editor Steven Vaughan-Nichols says that "getting clauses into GPLv3 that will block similar deals from happening in the future, while avoiding cutting legitimate software patents uses off at the knees, is going to be almost impossible." However, the FSF does not see "any legitimate use for software patents," and this philosophy is consistent with GPLv2, explains Perens. He expects large patent holders to use GPLv3 so far as they can retain a reasonable number of patents. Novell could continue using GPLv2 patents, but could go no further as the rest of the free software world moves forward. For GPL to "freeze on one version would act to erode its protections over time," says Perens. The Association for Competing Technology says GPLv3 will make it very difficult for Microsoft and Novell to use the license, and that it would not allow them to provide customers with the certainty they are asking for regarding intellectual property. Perens points out that the Linux community should not assume that GPLv3 would prohibit the Linux kernel from running on systems that use DRM, or that the license will require manufacturers to give up intellectual property. Perens expects the Linux kernel to go to GPLv3 in the next couple of years, but even if it does not he expects the license to have a major effect.

Tuesday, March 06, 2007

Software Reliability

Software has become a important and critical element of our lives in the information age. Any device, gadget, service we use today is dependent on the reliability of software. We do see major and minor glitches because of software failures. Even though software has become quintessential, its reliability has not. In a recent glitch which could have been catastrophic, the US Air Force would have faced one of the most serious accidents primarily due to software failure.
Interesting read and a awakening call.

"The new US stealth fighter, the F-22 Raptor, was deployed for the first time to Asia earlier this month. On Feb. 11, twelve Raptors flying from Hawaii to Japan were forced to turn back when a software glitch crashed all of the F-22s' on-board computers as they crossed the international date line. The delay in arrival in Japan was previously reported, with rumors of problems with the software. CNN television, however, this morning reported that every fighter completely lost all navigation and communications when they crossed the international date line. They reportedly had to turn around and follow their tankers by visual contact back to Hawaii. According to the CNN story, if they had not been with their tankers, or the weather had been bad, this would have been serious.

http://www.dailytech.com/Lockheeds+F22+Raptor+Gets+Zapped+by+International+Date+Line/article6225.html

Sunday, February 18, 2007

Hyper-Connectivity

John Reese's blog on Hyper-Connectivity has a lot of thought provoking implications for the networking industry. Here were are in the world of 3G, WiFi et al, and yet don't have an ability to be continuously connected. Instead we have continual connections to the network.  4G has a lot of promises in store but how do we have a standardized ubiquitous network that provides access to people irrespective of their geographical location. The Internet is a great equalizer but for countries with poor communications infrastructure are at a big disadvantage. What is needed today is apart from <$100 laptops is a cost effective access to the network. The current dependence of the Internet in spite of its changing traffic patterns over the years  has cemented Sun's motto of "The Network is the Computer".   I wish one day I will be able to stack all my information on the network in a secure and dependable fashion, thereby reducing the burden on millions of people upgrading their Operating Systems and hardware.

Quantum Computer

Quantum Computing

A company in Canada(www.dwavesys.com) has demonstrated a successful quantum computer. Alan Turing's Universal Turing Machine has been disproved by the latest advancement of computers in the last two decades. Now with the demonstration by D-Wave Systems, the possibilities are endless for applications of QCs in which computation is based on states called qubits, which is a unique quantum state. The biggest challenge has been quantum hardware which has been a emerging field. D-Wave Systems seems to have broken the ice and have pioneered the first successful quantum computer. The prediction that quantum computers will emerge as the superior computational devices at the very least, and perhaps one day make today's modern computer obsolete is practically true now.

Quantum computation has its origins in highly specialized fields of theoretical physics, but its future undoubtedly lies in the profound effect it will have on the lives of all mankind.

I wonder if the renowned computer manufacturers like HP, IBM etc are working on these and what effects will it have on software(Is Google doing something here?).


Thursday, February 15, 2007

System performance

The process of measuring system performance is hard. In communication networks, its fairly complicated to perform traffic analysis and profiling. In one of our intense performance measurement exercise we developed tons of counters for various measurements. After much thought a lot of them were too much data for analysis. That's when I found the following quote from Albert Einstein pretty apt!

Not everything that is counted counts, and not everything that counts can be counted.
- Albert Einstein