May
1997
Columns:
Front Page
Editorial
Founders' Forum
Serendipity
The Playground
Speakeasy
In the Family
WebTV Tips
The Inside Scoop
Customer Corner
Everything Else


 

All About Upgrades:
A look behind the scenes at WebTV Networks Engineering

Hi. My name is Lennart Lövstrand, and I'm a member of the software engineering team here at WebTV Networks. Sometimes when I think about what we've created, it strikes me how strange a thing it is. After all, when was the last time you bought a consumer product that just kept getting better the longer you had it? Not a bad deal, eh? I'm talking about the software upgrades that make the WebTV Internet terminal learn new tricks and understand more kinds of data over time. Most of you have already gone through one major upgrade. Back in December of last year, we released the 1.1 client software as a kind of early Christmas gift. When you turned on the box, a message told you that a new upgrade was available. By selecting Upgrade now and waiting a few minutes, your box got a bit smarter and better, all by itself and completely free of charge. Find me the computer owner who can say the same thing (or microwave oven owner, mind you)! It is now May and we're preparing the next major client upgrade. WebTV Networks has only been in full operation a little over six months, but it sure feels like much longer. Computer software companies might release a new version of their product about every 12 to 18 months, but we've already had two client releases and five service releases. That's a new release every month.

Servers and Clients
That's right! There have actually been seven new versions of WebTV software already, but no, you didn't miss any of them. This is because most of these releases happened late at night in our big service center here in Palo Alto, California, while you probably were fast asleep. When you turned on your terminal the next morning, the new features were immediately there for you to use: Discuss newsgroups, improved email, more background music... The world just got a little bit better. These "instant" upgrades can happen because the WebTV Network is more than just the WebTV Internet terminal in your home. It's also a dedicated array of some of the fastest computers available, connecting to the Internet at blazing speeds faster than most small countries' access. These computers do an assortment of grunt work, from converting strange images to common formats so that they can be easily viewed, to keeping local copies of popular web pages around so that they can be delivered faster when you ask for them. They also store your favorites and handle all aspects of your email -- receiving new messages while you're away, storing them in safe mailboxes that are automatically backed up, formatting them so they are as easy to read as possible on the TV screen, and, of course, cleaning out those discarded messages when they aren't needed anymore. It's because the WebTV Network is divided into this client and server model that it can do all it does. This is also the reason why we often can make new features available faster than the traditional software companies. You might say that we're on Internet time, where everything happens much faster than in normal life. Sure, trying to meet accelerated deadlines is often very demanding and we've had our share of working through the night just to get that last feature in, but it sure is a lot of fun too when you see your work get used by many thousands of people only a few days after you've put the finishing touches to it!

More, More, MORE!
Even though we try to get new upgrades out as quickly as we possibly can, it still usually takes several weeks to get it all to you, our customers. This is because as much as we'd like to think otherwise, we're still human. Software development is a quite complicated process and we need to thoroughly test all new features to make sure that they are of the highest quality and that we didn't break anything else in the process. After all, anyone who has ever used computers knows how frustrating it can be to try to use software that crashes all the time -- especially when there is nothing you can do about it.

So, what's involved in producing an upgrade? The simple case goes something like this:

  1. Someone comes up with a new product idea or problem to solve. The suggestion is evaluated and given to the appropriate Software Engineering team.
  2. The Software Engineering team determines the appropriate solution and implements it.
  3. The Release Control group incorporates the change into the main product line and builds a test release. If a problem is discovered, we go back to step 2.
  4. The Quality Assurance people test the solution and makes sure it works OK. If a problem is discovered, we go back to step 2.
  5. The Network Operations staff rolls out the change to a small group of early alpha testers. If a problem is discovered, we go back to step 2.
  6. The Alpha testers are joined by a larger group of voluntary Previewers. If a problem is discovered, we go back to step 2.
  7. If all goes well, all changes are combined together into a single release which is rolled out to all customers. If a problem is discovered, we're in big doo-doo.

As you can see, there are plenty of opportunities to go back to step 2 -- it's almost a miracle that anything ever gets out! In addition to this, there is also a lot of overall product planning and synchronization that is necessary to keep track of all the individual pieces of the system and make sure that we're going in right the direction as a whole. Then there are business decisions, hardware considerations, competitive timing, synchronizing with partners, workload balancing, etc., etc. The list does go on.

Which reminds me, I think I have to get back to work now.

   Cheers, --Lennart


Elsewhere, in the news...

WebTV NETWORKS TO SUPPORT PersonalJAVATM APIs FROM SUN MICROSYSTEMS AS FIRST LICENSEE

On April 2, 1997 WebTV Networks Inc. made an announcement with JavaSoft, a business unit of Sun Microsystems, Inc., at the JavaOne conference in San Francisco. The companies intend to work together on the development of a new JavaTM application programming interfaces (APIs) for the consumer electronics market. In addition, WebTV Networks announced that it is the first company to license PersonalJava and the two companies intend to define "Java for TV."

"We are excited to be working closely with WebTV Networks, the leading provider of Internet services through the television, on an implementation of the Java platform for the consumer electronics industry," said Jon Kannegaard, vice president of software products for JavaSoft. "PersonalJava redefines the market for on-line developers by taking Java to a whole new class of products -- most notably television -- an audience Java was originally developed for."

This development will enhance the WebTV Network in many ways. "The alliance between WebTV Networks and JavaSoft will help us showcase PBS ONLINE's rich content to the potentially huge on-line consumer marketplace," said John Hollar, executive vice president of PBS ONLINE. "We're enthusiastic about extending our programming, particularly our rich children's service, to the rapidly growing Internet television marketplace, driven by WebTV Networks, with the implementation of Java-enhanced content."

For more information, see the entire press release on our corporate web site.


Back to the top of the page.