EditorsAbout the SiteComes vs. MicrosoftUsing This Web SiteSite ArchivesCredibility IndexOOXMLOpenDocumentPatentsNovellNews DigestSite NewsRSS

06.23.09

Bill Gates: “Our Most Potent Operating System Competitor is Linux”

Posted in Antitrust, Bill Gates, GNU/Linux, Microsoft, Servers, Windows at 6:35 am by Dr. Roy Schestowitz

Based on Comes vs Microsoft exhibits, we already know that the company from Redmond is most afraid of GNU/Linux. There is no point in denying it and it is always valuable to see what the company says internally. In today’s exhibit, Exhibit PX08256 (2001) [PDF], a revealing memo from Gates is shown publicly, probably for the first time at least on the Web.

Jim Allchin distributes this in-progress memo from Bill Gates to Brian Valentine, Paul Flessner, Mike Nash, Will Poole, Yuval Neeman, and Dan Neault. Gates expresses concern about developers moving away from Windows:

Our strength comes from the singularity and popularity of the platform. even we can’t afford multiple overlapping messages especially when developers are moving to Linux and Java.

Right now they try pulling developers to Windows, .NET, and Visual Studio, thanks to Novell’s work on Mono.

Regarding quality, Gates concludes:

An ongoing jihad here is critical.

Jihad is a term that Bill Gates uses on occasions.

But here is the most interesting part:

Our most potent Operating System competitor is Linux and the phenomena around Open Source and free software. The same phenomena fuels competitors to all of our products. The ease of picking up Linux to learn it or to modify some piece of it is very attractive. The academic community, start up companies, foreign governments and many other constituencies are putting their best work into Linux.

Another drop of fear:

We need other creative ideas to allow Windows to match the viral nature of Linux.

According to Gates, GNU/Linux may be is easier than Windows (at least in areas that he mentions).

Provisioning and monitoring Windows systems needs to be far easier than Linux systems.

Microsoft understands that it needs to prevent GNU/Linux from becoming a commodity, which it is already becoming regardless of Microsoft’s efforts to prevent it (even with FUD, intimidation, and lawsuits)

The strength of this platform and the innovation around it is the key element in preventing commodization by Linux, our installed base and Network Appliance vendors.

Wallclimber, who kindly extracted and provided the full text, adds: “One thing that struck me in this one is the mention of Gmail (it’s mentioned under the heading “Asynch Communication”). Yet, the emails attached to the “Software Agenda” document are dated back in 2001.” She is referring to the following part where Bill Gates states:

We will continue to charge for email capability which we need to enhance with Gmail capabilities as discussed in the subscription memo, Unclear is whether Workflow or Portal Servers are separate and what access is paid for by having an up-to-date Office license.

Walt Mossberg and Gates are not exactly as separate as the Wall Street Journal wants readers to believe and here is more potential proof:

The PC has to have all the advantages of being a simple dedicated appliance without giving up the ability to run many applications and support a variety of peripherals and update the system software. Walt Mossberg and our satisfaction data say we haven’t done enough on this.

The full text is below.


Appendix: Comes vs. Microsoft – exhibit PX08256, as text


From: Yuval Neeman
Sent: Monday, January 08, 2001 5:55 PM
To: Yuval Neeman’s Direct Reports
Subject: FW: Software Agenda

Attachments: SOFTWA~1.DOC

SOFTWA~1.DOC
(56KB)

—- Original Message —-
From: Jim Allchin
Sent: Monday, January 08, 2001 7:43 AM
To: Brian Valentine; Paul Flessner; Mike Nash; Will Poole; Yuval Neeman; Dan Neault
Subject: FW: Software Agenda

Please make sure you read this and distribute it to your managers.

Although it isn’t completed, it is worth reading, commenting on, and planning for.

jim

—- Original Message —-
From: Bill Gates
Sent: Thursday, January 04, 2001 6:22 PM
To: Senior Leadership Team
Cc: Rick Rashid
Subject: Software Agenda

This memo is one of the ones I have discussed doing.

It is not the Roadmap memo.

Rather it is my view of the key issues.

This will be a live document. Some of the points are incomplete as you will see.

We will have some time to discuss where I should focus more attention during the SLT meeting tomorrow.

(1)
Plaintiff’s Exhibit
8256
Comes V. Microsoft

MS-CC-RN 000000067027
HIGHLY CONFIDENTIAL

————-(Contents of “SOFTWA~1.DOC” attachment):————-

Software Agenda
For companies like Oracle where they have a single technology and a focus on a single customer set its easier to understand what their priorities are Microsoft is building a much broader platform for a broader set of customers. Our strength comes from the singularity and popularity of the platform. even we can’t afford multiple overlapping messages especially when developers are moving to Linux and Java. our platform pieces have to solve major problems for customers and be extremely popular.

This memo is an attempt to draw up the list of areas where progress can make a big difference so that we can focus on these and track our progress.

In addition to improving this memo a complimentary Roadmap memo needs to be created.

Software Distribution
We need to be able to go to endusers and corporate customers with a service for keeping their software up to date. For customers I believe this should be included in our low cost subscription offering which you get 3 months of free membership in when you update Windows or get a new copy. The service needs to federate through the corporation so they can control what goes out to their end users. Allowing updating to be federated will help us know how to federate other elements of the system which contain Microsoft URLs or connect to our services (help, crash, dump, IM, custom home page, SIP communications, remote storage…). Federation means giving IT a way of reviewing and controlling what goes out as well as using the infrastructure for their own software distribution. We have many formats and approaches to software distribution today. the question of when “setup” gets done affects distribution. SMS should go away as a separate product as we provide this service as a part of Windows. Windows update needs to move to sending deltas instead of whole files. We need Drizzle features that MARS provides. In many cases we need to move away from DLL replacement to patching using the PPRC technology. Fusion needs to be embraced broadly. Windows Update has to be a lot less intrusive to the user and a lot richer in content. Corporations have to feel a real loss if they are not getting the fixes that only come by belonging to the update service. We need to articulate the vision for software distribution and get ISVs involved as well. OS updates and Driver updates need to share the same infrastructure. Windows needs to pick someone to architect this and make sure it is a central element of our platform. The business benefit of having great software distribution will be huge because it will give corporations a reason for staying up to date with us without viewing every new bit that comes from us as creating gigantic overhead, It will also allow us to up the quality of the products our users experience dramatically. This is the most important reform I list. The Windows group needs to drive the creation of this service for all Windows users and
ISVs.

There are parts of SMS which could get moved to a “PC support” overall package (like software inventory) but that would only make sense if we bought one of the PC support packages to sell as an application.

Quality
Microsoft needs to know when users experience crashes or other errors that come from software bugs. Using this feedback loop we will be able to fix problems in our products quickly. Combined with the distribution service described above this will do more to improve our reputation than any new features we will provide.

Both Office (Dr. Watson” and Windows (Bluescreen) have systems for taking system crash information and publishing it to a MicrosoR URL so that we can analyze the crash. Already these systems have uncovered a number of important crashes that our normal systems had never caught. Today we have no way of taking a system that is experiencing problems and being able to remotely patch in code to gather more information. Using the
work done in PPRC we can add that capability. Today the crash logging systems aren’t able to involve a third party ISV or PSS or a customers IT group in the process of gathering all the information and solving the problem – these dumps are coming straight to the product group today. The current systems are restricted to dealing only with crash situations – they should be broadened to support general error conditions including
having the application call on these services when something is wrong. These crash handling systems need to be changed to work in the unattended server environment.

We need to have at least 100,000 clients and 10,000 servers where we totally support the machines to have a complete profile of problems. As part of our subscription offering being able to log what goes on on these systems, back them up and solve any problems that come up will guide our work. We need to understand the costs and complexities users experience with our systems.

Beyond the “error” feedback loop described above we need an overall focus on quality issues including someone full time who looks at the business, partnership and technical issues that could significantly improve the situation. People like the specialized publications and Intel could play a role in helping us measure what needs to improve. For example a great feature of Whistler is the ability to connect up with someone else in order
for them to help support you including letting them take control of your machine. We need to fix the firewall problem that stands in the way of all PC real time scenarios for this feature to see its full use. We need to continue to evolve this capability so that
support costs for PCs go down significantly. This feature needs to work for ISVs and IT. Another key element of quality is to make sure that buggy third party code creates less problems for our users. Central to this is code signing and forcing addon code to go through a testing process. Our update service should be able to notify users that a piece of code they have installed has had its certificate revoked. An ongoing jihad here is critical.

Productivity
The man-years of work per feature created at Microsoft isn’t good enough. Good architecture that leads to powerful shared infrastructure can help with this but there are dramatic gains that need to be made beyond that. The total number of bugs we are creating and then having to track down slows everything down. Even a 10% improvement would make jobs more interesting, cut costs and allow us to get higher quality more powerful software to market quicker.. Potential advances can come from tools, processes, and source language. The recent move to SourceDepot was a big success
and reinforced the importance of great tools. Likewise the Prefix work from PPRC has been extremely beneficial. Still our tools overall are poor. The tools we use internally should be a pure superset of those we offer to the market. Our source codes should be structured XML documents that allow specification and code to be more closely coupled. Part of the PPRC vision is that navigating information related to execution and testing
with the source code should be easy. Source codes should be easily accessible online. Part of Simonyi’s vision is that the source language itself should be extensible so that domain specific constructs are simple to create and understand. User interface’ s should be so easy to create that you create them and then document them. Ideas for improvements will come from PPRC, Simonyi’s work, Research in general, Linux development, other outsiders and parts of the product group including some initiatives in David Greenspoon’s area.

I think VS8 should embrace the idea of source code as an XML document with an environment that combines the vision Intentional Programming and PPRC have suggested. This will be a huge advance for our customers as well as for internal productivity.

We need a specific agenda in this area – things we are implementing and things we are exploring. We need regular checkpoints for discussing best practices and new ideas.

Openness
Our most potent Operating System competitor is Linux and the phenomena around Open Source and free software. The same phenomena fuels competitors to all of our products. The ease of picking up Linux to learn it or to modify some piece of it is very attractive. The academic community, start up companies, foreign governments and many other constituencies are putting their best work into Linux. Although we cannot make Windows free for commercial use we can do dramatically more to make it accessible including parts of the source code. We can make it flee in restricted areas. One important idea is to be able to source debug any running copy of Windows by connecting up to an Internet hosted symbol table with PPRC technology allowing you to patch the code. This means that you don’t have to get the entire source and learn how to build it to debug and add on to Windows at a source level. Although some parts of the source would have to be made opaque to the general public, some of the source could be there for all people and all of the source could be there for some people. We need other creative ideas to allow Windows to match the viral nature of Linux.

Storage innovation (including caching & replication)
The Microsoft file system and related protocols have stood still for almost a decade. During this time HTTPFLJRLsiDAV and Email have become important competitors to the file system. Users are very frustrated that even the most basic property query capability is not available for files. Even inside Windows itself we create special stores for music, fusion, passwords and every new object that needs property based viewing. Office has created a storage system called Sharepoint based on HTTP. MSN created a free “storage” service called MSN communities. Office has had to abstract away from just using our file system APIs because Windows did not connect out to rich enough servers and so Office embraced some form of DAV. IIS is a kind of storage system with its own naming and security and code invocation capabilities. Our customers are finding it easier to install storage appliances than Microsoft servers. Storage systems are being abstracted away from the application servers. Both our servers and CAL revenue are at risk. The best solution is to pursue an architecture that is over a decade old and that is to make the storage system richer – rich enough so that email, music and things like printers, fonts, etc.., are able to be queried and stored without using special applications for each type. This means taking our next generation SQL technology – Yukon and making it the next generation file system.

The new strategy will only work if we get a class of applications that take advantage of the new capabilities of the store system. Capabilities like basic Document management should be intrinsic to our new file system. Serving up bits over HTTP and serving them up over SMB should not be different. The name spaces and ability to invoke code should come together. HTTP listening and HTTP efficiency are key capabilities – one listener and one talker. We need a vision of how storage semantics and systems will evolve. What is our response to huge SAN networks of disk supporting the commodity protocols? Will we make Windows systems easy enough to set up and price attractive for these markets? What kind of high end features are we missing?

I have pushed the Windows NTFS group to think of Sharepoint as a storage system that they should ship and then work to provide something that is integrated and better than NTFS alone or Sharepoint alone. There is a question about Yukon subsets. Whistler+l should probably align all of the various system stores to a subset of Yukon like DireetDB. We also need a compatible subset for PDA devices. Btackcomb is the release that has the Yukon file system active once it is booted and is used to simplify the interaction with all information on the system

The future of storage systems has to be considered in light of the intelligent caching that will be present in the Network and in the client devices. There is no reason that Geo-caching should apply to HTTP information and not to the Windows file system. Our whole Message bus strategy should apply to caching file system information as well as generic messages so that the work we do on tagging, local recomputation, and push]pull are shared. We should be the leader in defining the new protocols for caching cache invalidation and reporting usage of cached information. Our client level caches give us the ability to influence Websites to do things our way.

Making replication of information is another critical goal for storage reform. One of the key scenarios where the PC shines is in offline use that is not going away. Today the user is forced to manually do the replication of all the information they might want offline. The interface is different for Mail, Directory, WebPages, Files, and Code. For files we have Briefcase and Intellimirror. Windows2000 brought the different replication commands into one place but that reinforced the problem. Our file system should treat caching of information – all information – as one of its native capabilities, We will need a short term plan for replication advances as well as the plan for Blackcomb. We have to make it easy to move between PCs either whether or not a user connects to our services or not.

The new storage system has to rtm as a service in the cloud at very large scale including hooks in Windows to make it easy for subscribers to store data. Even before we get advanced storage we need to provide a rich replication service between all our devices.

Collaboration/Workflow on SQL
Strongly related to storage reform is having email show up as an item in system storage. We have already taken the step of combining the Exchange and SQL groups with this goal in mind. Yukon is being influenced by the requirement of hosting the next version of our email server. There is a key question about what different servers we should have on top of Yukon for Knowledge workers. The Windows File Server needs to use Yukon and offer much richer features which subsume Sharepoint. We will continue to charge for email capability which we need to enhance with Gmail capabilities as discussed in the subscription memo, Unclear is whether Workflow or Portal Servers are separate and what access is paid for by having an up-to-date Office license. I believe we should take the Biztalk platform and use it for Office workflow but this requires a visual front end. The technology needs to relate to our Information Agent work.

The separation of Office from our servers has held us back in solving problems for knowledge workers. No matter what the organization structure is Office needs server support for rich Document Management, Workflow, Conferencing, C-mail and other knowledge worker scenarios. We should also combine the efforts to have a rich environment for Team source code development with the desire to have a Vignette like high end production tool built on these servers.

Whatever servers we create we will want to operate them as a service for customers signing up to our Office.Net service.

Authentication and Directory
We need to move over to SQL as the store for directory and metadirectory as soon as we can. We need to have security ACLs they aren’t dependent on Ids which are tied to the hierarchy chosen for names. Companies should be able to move users around in the hierarchy whenever they want. By using SQL our tools will work with the directory information. We need to articulate the importance of a Metadirectory and take leadership in having connections to all the applications that use directory information. There will be a lot of key schema work that we n~d to do in partnership with other leading companies to make this work. We need A.D. to support public keys and allow for federation with Passport. One of the systems should be renamed to have the same name as the other. Our metadirectory should be usable independent of the OS it is running on for intranet scenarios. The Directory team needs to work with Yukon to get the data model and protocol issues resolved so that the semantics for authentimtion replication can be done without special set up. We need to make sharing of all kinds of information across corporate boundaries easy by federating with Passport. We need to make it easy to authenticate the sender of information the same way. Directory design should not be a fragile and gating item for the deployment of Windows,systems. We need to make sure our authentication system allows for signed code. We need to eliminate vulnerability that the way our admin account passwords are handled creates. Our customers should not have to go to third party solutions. Our certificate architecture should be aligned with our ACL/Directory/PKI work. Customers shouldn’t have to buy add on security products like Entrust. The Windows group needs to drive a roadmap for this big change in how we do Directory.

We should be able to charge extra [’or Metadirectory and the Federation services that allow the Extranet services to work through Passport.

We should have Office and H,R. Apps vendors work with our MetaDirectory people so that the common scenarios relating to finding out about employees provides a great front end experience. Today trying to find out who works in what part of the org or where they are located or what their backround is far too complex.

Management/Setup
Provisioning and monitoring Windows systems needs to be far easier than Linux systems. Our management infrastructure has to use the eventinghogging/filtering APIs that we are defining with the SQL Message bus. The vision of the BIG group where you can describe a set of systems to perform a task and then monitor those systems through an XML document is key here. An abstract description of a servex should allow a service to fully provision the server. Customers respond favorably to the idea of having ASP resources available on demand for peak loading and disaster recovery. BIG and AppCenter and Management to me are really one set of’problems. By using all the SOAP/XML protocols and the Yukon infrastructure we will be able to have an extensible management environment. Windows has to work in a headless environment including reporting crash information over the network to enable the automatic provisioning scenario.

One of the reasons that appliances are so attractive for dedicated functions is that Windows is too hard to setup for specific profiles. Although for high visibility profiles we should have special packages it should be very easy to choose a profile like “Load balancing” or “RAS” and a few parameters and simply ask the server to be setup. We need to merchandise how this approach can be more flexible in terms of staying up to date and providing flexibility than a pure appliance approach, In the past we tried to do setup and monitoring using MMC. MMC wasn’t a model – it was simply a shared display service. The Setup and Management Console capabilities need to be put onto the XML runtime as that gets done so that we get rich viewing and navigation. I don’t know what interim runtime the Management people are trying to use – this should be discussed.

Some level of management needs to ship with Windows and some level can be extra charge. We need a rich framework/schema around the Yukon infrastructure that third parties use to add management capabilities. Tivoli excelled as a framework with third party value added before they actually shipped rich functionality which is a model for what we need to do several parts of management. We should make sure firewall issues don’t make it hard for people to manage their systems across the Internet. We should consider offering Remote management services under the new framework.

Leadership in management will be measurable from customer feedback, revenue, and comparison with other high end vendors. We have invested a lot in this area over the years but our solutions have suffered from having their own infrastructure. Windows cannot be a strong server product without having excellent management.

Presentation reform
Our “presentation” layer today consists of a number of disconnected technologies including DirectUser, GDI Plus, DirectX, Trident, PTO, VS Forms, Webforms, Ebook, Office SDM and Forms3. An innovative presentation layer is critical to showing off why local application execution provides a better experience and keeping the PC vibrant versus dumb devices. We want most applications to download to PCs and run there receiving XML data and XML SOAP calls over the Internet. A rich presentation environment that allows forms and UI to be specified and easily edited and allows XML data to bind to each is critical. The lowest level of our Presentation system should present a single driver interface and allow exploitation of new graphics chips. Turner Whirred in Research is pulling together thoughts on what requirements this creates.

A good design for this system will allow us to layer in PDF compatibility including an annotation layer. A good design for this system will allow us to build an animation layer which is competitive – today Flash is playing this roll. Video and Audio will play a major role in upcoming interfaces and they cannot be relegated to just run in a player application. Also screen updating should be done more smoothly using offscreen memory

I want us to be able to construct rich UI easily simply by editing an XML document. I want us to be able to bind to XML data easily using the new forms environment. We have compatibility issues to consider with all of the above systems. Trident will be a piece of the solution as the HTML displayer but it will likely not be at the center of the system.

One important consideration is to make sure that display remoting using our proprietary WTS protocol/Netmeeting (same or different?) continues to work for applications with extensions to support high quality audio and video. There are a lot of compatibility constraints but also a need to innovate in this level of the system. A key question is: Can we make applications look better if they use the new approach?

Its unclear to me how much symmetry we can have with the server based forms model – Webforms. Ideally we want XML payloads to rich clients but developer’s don’t want to think through their forms logic twice and completely duplicate that code. Our strategy is to make standards based HTML look increasingly obsolete and not have to give away the underpinnings of our presentation environment to a standards group. There is an ongoing dialog between Ted Peters and all of the constituent groups to try and come up with a proposal on where we go with this. FIP is potentially a partner for printing related aspects of the new approach.

Applications platform
Our applications platform message is quite confused today. Pieces like CLR, WMI, MSMQ, XML runtime, Biztalk, MTS, i-IS, ASP+, Load Balancing, Message bus, SOAP, UDDI and Yukon are not consistent and reinforcing. Basic standards like eventing, logging, and filtering have to be established. The discomaeetion of these products make our message when trying to win back the developers who like JAVA and J2EE very difficult especially when we have the limitation of being only on Windows and those technologies are supported on many platforms by many companies. Although we have waited a long time for the shipment of VS with the URT that doesn’t give us anywhere near a complete consistent platform story.

We have talked about many of these problems but not pulled things together. MSMQ is a bit of an orphan. Our transaction strategy isn’t getting any traction while BEA has established an $800M per year business around that technology. We did a good job on MSMQ and MTS but they couldn’t thrive on their own. Our decision to make Yukon the center of gravity and to connect Yukon to the URT should give us the clear starting point. We may need to be able to package Yukon so that it doesn’t feel like a database if all you want is a Message bus. We may need to create some subset implementations of things like Queuing for size and speed reasons. However the API set should be consistent. We may need to be compatible with some of the J2EE apis.

I think that between Paul, Yuval and Eric’s group with some help from Rick Rashid we should be able to go through another iteration on this (like we did with NGWS) and come up with some clear answers.

The strength of this platform and the innovation around it is the key element in preventing commodization by Linux, our installed base and Network Appliance vendors. We are in the best position to define the distributed application model that allows work to be moved out into the Network. We don’t have enough research our product group people pushing this agenda but we have the best opportunity. This is what it takes to seize leadership in caching, load balancing and protocols, I think between Management/Setup and a vision of how our platform is Distributed we give ourselves a chance to lead in all the Level 7 networking pieces. I almost included this as a separate item but executing on these two technical pieces will give us what we need except for packaging, marketing and sales force.

There is a major packaging question once we get architectural coherence. To what degree should we package or charge for the rich so ealled middleware pieces separately from the rest of the platform? Are there advanced forms of some of these pieces that cost extra? Most of the API set we want supported in the base server with understandable advanced services costing extra.

We are discussing with IBM a joint effort to agree on most of the Application server pieces so that companies have a choice of our two implementations. Although this would be an unexpected partnership I see a lot of advantages for both companies. I think they can help with parts of the architecture. The current view is that we do not share any code between the companies.

We also need to drive Microsoft to use the new platform to prove it out and show it off. Our Services need to use these architectures so that our tools make them easy to extend.

PC Excellence
The PC has to have all the advantages of being a simple dedicated appliance without giving up the ability to run many applications and support a variety of peripherals and update the system software. Walt Mossberg and our satisfaction data say we haven’t done enough on this.

One critical issue is boot time. I spend minutes of my life everyday rebooting my system at work and at home It has gotten slower as I have moved to new releases of Windows. Just making a big advance in this area would cause a lot of people to upgrade Windows. The Windows team is focused on making Standby and Hibernate much faster including the BIOS piece that requires OEM work. We need to make sure we improve it even a lot beyond where Whistler will be partly with software advances and partly with hardware. We should have a flavor of Boot that assumes not big changes and uses the same logic and de-hibernating.

WinHEC is the forum where we get to send the message to the hardware vendors about what we are focused on. We need a clear message on power management, removable media, microphones, video decoding, graphics, that makes the PC a moving target.

Data Center
Its critical that we be able to handle the most demanding applications – even those that don’t partition naturally across many servers. We need to lead with partitioning technology but also make sure our hardware partners are providing single server systems that match everything SUN is doing – memory bus, I/O speed etc.. We will continue to find software bottlenecks in these scenarios. There are a number of sottware features we still need to match up to Mainframes and Solaris in the Datacenter scenarios. Many of those we can use partners to solve. Key hardware partners are IBM (particularly if they will put x86 support onto their latest chip technology), Intel, AMD, Compaq, HP, Unisys and a number of Japanese vendors. We have put a lot of energy into supporting Itanium and we need to evaluate at some checkpoints how well Itanium will provide what we need.

Reliability and Manageability are also critical to success here but those have already been mentioned. The Data center does bring special requirements to those issues.

Real time communication
Part of our vision is that communication in the future will be multi-modal. People will have a screen – either a PC or a PDA type screen – and anytime they are interacting with the screen they can use speech for commands or navigalion or dictation or talking or voice mail. Notifications/email/filtefing. Screen call. Collab. Ozzie-Groove. Multimedia. Capps vision. Screen Call extended – all calls coordinated as speech and data.
Milestones.

Asynch Communication
Email client. Storage. Gmail. CRM. Information agent. Stored Annotated meetinss. Scheduling, Multimedia. Future of Outlook. A piece of this was already in the subscription memo. Notifications versus IM versus Chat versus Mail.

UI approach/Schema
This is the hardest one to write. I need to put a lot of time on this. I have a lot of thinking I need to share on this.

Office code base
Development platform. Extensibility. Future of Word. Future of Frontpage. Future of Access. Future of Works. Future of Publisher,

Tablet/Ink
Reading/Annotation
Meeting/Learning
XML runtime
(forecasting, management,..) Future of Excel,

Speech platform and Natural Language
Over the years we have invested quite a bit in natural language and speech recognition/synthesls. Recently some people have asked when it will really enhance our products and whether there is a customer/developer need that will be huge around this technology. While some parts of the speech stack we could have developed by partners the “API” that says how people allow speech to affect their application is something we need to lead in and own.

As described in our RealTime and PC vision, speech input will be a mainstream part of using a PC. Likewise typing natural language as part of a conversation (type in line) will be the most efficient interface for many things. This means that alI applications including websites will want to be able to describe how to “react” to natural language. For example when you connect to Amazon.Com with a PC or a PDA your commands should help you navigate. Part of Windows/.NET keeping a lead as an applications platform requires us to have the architecture and tools that make it easy for people to language enable all applications. We need to innovate in how these grammars or slot filling or tree diagrams deal with probabilistic input. This includes having the client side and server so,rare that can execute the applications. A degenerate case is where the device is a voice only device. Since Nuance and Speechworks dominate people creating voice only interaction it is natural for them to be strong in websites wanting multimodal interaction. Also IBM, Philips, Lucent and various research labs will like to give away speech technology so our asset needs to Focus on toois and API allowing other speech engines to be used.

Speech interaction will change the way applications are defined and finally bring the idea of social interface back to the fore. I think we can define some scenarios that we need to lead in and track our progress in being the primary platform for language enabled applications.

Summary
It very exciting to see how many cool things great software can do. Things that everyone really cares about – Knowledge workers, IT, Developers :and Consumers. G

Credit: wallclimber

Share this post: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • co.mments
  • DZone
  • email
  • Google Bookmarks
  • LinkedIn
  • NewsVine
  • Print
  • Technorati
  • TwitThis
  • Facebook

If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

Pages that cross-reference this one

18 Comments

  1. aeshna23 said,

    June 23, 2009 at 8:14 am

    Gravatar

    We need other creative ideas to allow Windows to match the viral nature of Linux.

    This is ultimately the reason why Linux will triumph. It’s not costs for the consumer. It’s not even freedom. It’s creativity. Microsoft is a large bureaucracy that squelches creative ideas. Linux lets the thousand flowers bloom and thus Linux evolves.

    twitter Reply:

    You should want freedom for its own sake and this is why M$ is evil. Creativity comes from freedom, M$’s business model has always been to tax the creativity of others. In the beginning, he and other software owners could pretend they were doing a service by attacking people who shared. He promissed improvements and usability for the money and flexibility he took. It was not true then and it’s less true now. The quick and dirty OS (QDOS) he sold IBM was the result of individual creativity and freedom. Symbolic manipulation and web browsing programs, created by government, were stolen by greedy owners who robbed each other and sold the public what it should have had as free software. Today, it is obvious that no one needs software owners. Despite many attempts to thwart GNU/Linux, anyone can download a live CD and see for themselves what software freedom can do for them. M$ is and always has been an enemy of software freedom because their business model claims such a thing is impossible. Reality is asserting itself.

  2. aeshna23 said,

    June 23, 2009 at 10:48 am

    Gravatar

    You should want freedom for its own sake and this is why M$ is evil.

    We fundamentally disagree. I don’t value freedom in itself. I just value what can be done with it. With software, freedom enables an atmosphere where wonderful things can be done. With land ownership, freedom enables the draining of wetlands and all sorts of evil. Some lack of freedom is necessary if we want to live on a wonderful green planet.

    It seems quite relevant to note that there are no negative externalities from software development, but there certainly are from real estate”development”.

  3. CHub said,

    June 23, 2009 at 1:59 pm

    Gravatar

    Open community needs to come up with it’s own Intermediate Language, an alternative to MSIL/.Net . The other side to this would be to press Microsoft in announcing that .Net is truly open and free to use. I think they may come to the party if they know a rival could hamper their movements.

    The winning OS will be the one that have all bases covered. A OS that a workplace wants to use as it knows it’s workers use it at home. A OS easy to use and fast. An OS that doesn’t restrict the user.

    When Bill talks about Window being an appliance in the product sense, he’s really nailing down Window’s restrictions. We must play on that.

    A great slogan for Linux/gnu would be, “Everything is happening on Linux”. Community and Hobbyist themes are our best shots.

    Roy Schestowitz Reply:

    We already have something better than .NET. It is called Java and it is GPLv2-licensed. ;-)

  4. CHub said,

    June 23, 2009 at 2:01 pm

    Gravatar

    Needed to edit my last post..,

    Roy Schestowitz Reply:

    Let me know how to edit it and I will.

    CHub Reply:

    Just a few spello’s like it’s for its. And in one place I used ‘have’ in place of ‘has’.

  5. Robert said,

    June 23, 2009 at 5:09 pm

    Gravatar

    This really doesn’t mean much, it was written in 2001. 2001!!!! Where has Linux gone, it looks better but it only has 5% of the market? If Linux would have 15-20% of the market by now I would say this memo has some meaning.

    My thought is the next OS to truly be revolutionary will then win…weather if that is Windows, Linux, Mac OS or some new OS being developed. It would have to really be revolutionary, something that people will want to go to. It won’t matter if its free or cost money, if the next revolutionary OS (not just evolutionary) has something people want and will make things easier. Maybe it’ll have excellent and seamless voice recognition, maybe it’ll have an easy to use touch screen or virtual screen and maybe it’ll have both voice recognition and a virtual screen? Maybe it’ll be controlled with the brain (may sound silly but people are working on it). I think as long as we’re using a mouse and keyboard, Windows will be the top OS and thats because its backwards compatible. As long as Microsoft keeps some sort of backwards compatibility, its not going anywhere. Unless a linux distribution can give a high amount of easy compatibility with Windows programs, Windows will be on tip. This new OS will have to make people say “screw backwards compatibility” and want to start from scratch. Mac OS isn’t doing that and Linux isn’t doing that.

    Another thing that can maybe change Windows from being #1 is right now the computer is something we use in our house and work, we use it for fun and for business, but for the most part its an appliance. For another OS to take over they’ll have to make it a seamless extension of our lives. Meaning weather if we’re in our house, car, work or anywhere in the world we can access all our information, programs and games. Its not about transferring media from your home PC to your PDA phone, but to just have it work without transferring. Being able to go on a trip and to be able to get stuff easily from your home or work computer seamlessly, quick and easily. Having this work without even having to think about it, it just does. No need to have several computers in your house for each person who lives there, just have one that everyone can share anywhere in the house on several different medias weather it be a terminal, or handheld device.

    If either of these two ways…or both come out then Windows will have a problem. Maybe it’ll be a single computer in your house and you’ll be able to access it from anywhere, maybe it’ll be what Google talks about, apps that are run from the browser and it doesn’t matter what OS you use. I’ll be light and simple and you can have it on your PDA phone, and home server and they’ll be able to communicate with each other and everything that is on one will be accessible on the other. Work servers will run off of it and with permissions you can easily get of your work off those too.

    Thats my theory and thoughts on it and no 2001 memo is going to make me think differently. Sure MS is worried about Linux and Mac OS, and anyone else thats thinking of an OS. Because any year some company can come out with an OS that will make people want to switch, but its going to have to be a great OS and we’re going to have to be WOW’d. Nothing has come out yet that does this, when will it happen? Who knows. Will it be Microsoft or some other company that develops it, that is yet to be seen.

  6. FreeBooteR said,

    June 23, 2009 at 6:41 pm

    Gravatar

    Anyone notice Mac doesn’t seem to be on their radar at all (even given that this is back in 2001)? GNU/Linux is their real competition. They know that Apple’s proprietary hardware limits its market share. GNU/Linux is the real threat, and they are feeling it big time with the flop that Vista was in today’s OS climate.

    People keep blasting what year is the year of the GNU/Linux desktop. I have to say it was over 3, close to 4 years for me. Every year is the year of the GNU/Linux desktop. Growth is far faster and viral than people realize and that it’s momentum is an inexorable, unstoppable force.

    Roy Schestowitz Reply:

    The actual cost of Windows declines just to keep up with GNU/Linux. It is not sustainable for Windows.

    In the news:

    “The situation puts Microsoft in a quandary. If the company lowers the price of Windows 7, it could hurt revenues and profits. If it keeps the price high, PC makers might bolt to alternatives, such as the free Linux operating system.”

  7. josvazg said,

    June 24, 2009 at 6:40 am

    Gravatar

    2001?
    The halloween docs again?

    Well, even if it really happens it is taking so much time that Microsoft will do a lot of cash in their way down.

    Am a linux user since the late 90′s and I use it as my default lilo/grub boot option since 2002 or so, but I still can’t recommend it to people too used to Windows and/or too dependant on apps that ONLY run in Windows (and that have no opensource “alter-ego”)

    Microsoft monopoly has too much inertia to be removed.

  8. Ciprian Mustiata said,

    June 24, 2009 at 11:03 am

    Gravatar

    I don’t understand. I am a .NET software developer. I work on opensource project. I tried to port it to Linux (trough Mono). I work for a CAD application. When it comes to develop the same thing using Java, it freaks me out. Language is weak on Generics (it does not support them), is fairily comparable on integrating scripting languages.The reason that WIndows/.NET still stands is on desktop applications.

    Can you imagine other framework than Qt or Python to make a desktop application that look almost integrated in your desktop? Gtk and GLib OO programming is a joke. Also, if you put the IDE power on the platform as a PAID developer that need to feed family and to invest in hardware to contribute back to opensource (as most software works today), even paying an IDE in a closed source environment I think is not have critics as long as I do have productivity.

    As matter of fact I use SharpDevelop and I test small details on Visual C# Express.

    It’s easy to speak about freedom as long as you consume it, but I know that I have to write a highly complex parametric code, that generics are mandatory and I remain with two options (Java is not one of them) on Linux: Mono and C++. If you put that C++ for large projects translates in 1 hour build time, I think that if someone will come and say: take your project and rewrite to use Mono, I would say: I will give to you my help, when you want to donate time to do it?

    The last thing that I complain on Linux is that I bought an ATI board (because AMD was pretty opensource for some time) and even now it’s OpenGL does not work smooth. Is a 4850 and is an entry level professional card. I use for a “single game”, Vista Aero which works almost without a glitch.

    What I want to point here is the fine border between freedom and hypocrisy and persons dictates over their personal preferences to write a thing in this or that, but it does not match when we talk on real life developers that have some time to spare, and if tools are wrong, they should better use a SharpDevelop (let’s say) and at the end to port it to Mono, than to use makefiles and other abnormalities like C/GLib only because an user would like for their fun to consider that this framework is their first love, but not doing programming with it, but only making fun of developers to use that framework. Look on Gnome 3 that will work for at least one year to remove deprecated symbols and technologies. Sounds as fun, isn’t so?

    Roy Schestowitz Reply:

    Have you considered Qt yet? I liked it when I developed with it and it works smoothly across platforms.

    Ciprian Mustiata Reply:

    Yes, I’ve did. That was the option regarding C++. The issue was the build times on it. On SharpDevelop I have right now 5 seconds (on my workstation) to 40 (on an Atom based CPU) build times for this project which has 650 classes. Even considering that I will do build time tricks (which I can do them on .NET also, but this is not the point), I hardly can achieve under 1 minute build on the same machine using Qt that took few seconds afterward (with the actual code ported).

    The single compelling option as platform was Java, but JVM have no generics support and as CAM/CAE parameters and parametric modelling programming may break very easy your data, so the second technology was not preferred.

    So here was only about picking a technology that few developers (to be more precise: two) can create under an year on top of a CAD opensource framework (OpenCascade) a full working concept of a CAD/CAM/CAE application. Linux WAS considered as an option but there were many small limitations (and the biggest was the build time and harder to setup environment for some, as QMake was fairly easy to use) that makes us run away.

    Roy Bixler Reply:

    According the Wikipedia, generics have existed in Java since 2004:

    http://en.wikipedia.org/wiki/Generics_in_Java

    In any case, I hope you are keeping your options open.

  9. Ciprian Mustiata said,

    June 24, 2009 at 3:15 pm

    Gravatar

    Mr Roy, I so not want to take here this as a platform war, as it has no purpose. For instance when I’ve said C++ as it has big compile time, the list does not stop here. Here is not about to blame one platform component or another. The “compilation time” as argument for C++ was in short: it is really hard to contribute on a entry level machine when the project grows. Think on OpenOffice and is hard to set up the bar of contributing as machine and codebase you want to contribute is not very easy to comprehend. Also on list of C++ are missing of UML integration (both SD and Visual Studio have them), unit testing (it can be done with Qt, but is trickier for entry level), no refactor support (excluding Eclipse’s rename identifier), bad code completion support on high usage of macros (which happen to be OpenCascade + Qt world).

    Ok, please note that I had carefully said that JVM have no support of Generics. The Generics encapsulation are checked at compiling level. This approach keeps binary compatibility (so is for good reasons) but in fact you can take a “generic” class and replace with one non generic. Also, without wanting to enter in details, I say that this is why .NET 4.0 adds support of covariance just because the .NET 2.0 offers support for Generics. Java have no such problem as it does not “care” at the bytecode level.

    So in Java, ArrayList is translated at bytecode level as ArrayList, when in C#, List is in no way compatible with List, so using other type instead will make at runtime level to nothing happen.

    The type enforcement can be done in a lot of ways, there are adnotations (the preferred way to do it on Java 5 and up, which adnotations are much better implemented in Java), but is not based on Generics. In Java also a complex generic code goes to a lot of conversions with generics, so it gets down in speed, when the equivalent .NET implementation of generics, will improve performance and memory consumption (excluding the fact that you functions associated with every type).

    At the end I want to say a thing: both C++ and Java have their own strengths. C++ is snappy, no JIT occur at any given time, it integrates seamlessly with any C or C++ library, and with Qt things goes pretty decent. I am sure that is a very good reason to implement Photoshop Elements in it, or the best use case IMHO is for phones because no JIT-ing is involved. Java also it have a lot of professional grade tools. And at least for web development using EE frameworks is great. A bit big, but is great.

    Anyway, C# at least in combination with word: Desktop (and you may note: only on Windows) is pretty great competitor. Language/VM wise is a powerful implementation, let’s say comparable with Java. Also, SharpDevelop (I don’t care about full priced VS) offers as the last stable release: code quality checker, code coverage, unit testing integration, integrated profiler with minimal overhead, one build tool, versioning control integration, visual designer tool. This as features at least is the same with NetBeans on desktop, but yet I think that Windows Forms looks better than Swing on Windows. And at the end is: on our project, was better fitted than other platforms. It does not mean that other were bad, but in our evaluation, .NET as development platform was the best on that given moment.

    Ciprian Mustiata Reply:

    http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java#Generics
    http://en.wikipedia.org/wiki/Type_erasure
    Here is one case: (code from wikipedia)
    ArrayList li = new ArrayList();
    ArrayList lf = new ArrayList();
    if (li.getClass() == lf.getClass()) // evaluates to true
    System.out.println(“Equal”);
    Also look here:
    T instantiateElementType(List arg)
    {
    return new T(); //causes a compile error
    }

    In fact the second case is somehow wide spread in our codebase as we need it as a part of type enforcement.

What Else is New


  1. Scanning Patent Troll Implodes; Is the Podcasting Patent Troll Next?

    MPHJ loses and Personal Audio LLC perhaps wins for the last time since software patents are quickly losing legitimacy in the United States



  2. If CAFC is Not Above the Law, Then it Should be Shut Down Now

    A long series of abuses in CAFC may as well suggest that this court has become broken beyond repair



  3. The Latest From Microsoft Patent Trolls and Patent Partners

    Microsoft-linked and Linux-hostile trolls continue their relentless attacks (albeit with little or no success) while patents as a weapon lose their teeth owing to a Supreme Court ruling



  4. Microsoft Proves That Its Massive Layoffs Are Not About Nokia

    Microsoft is laying off a lot of employees who have nothing at all to do with Nokia



  5. Links 19/9/2014: Another Red Hat Acquisition, Netflix Dumps Microsoft Silverlight and Brings DRM to WWW

    Links for the day



  6. Links 18/9/2014: Windows Copying GNU/Linux, Germany Moves to Security

    Links for the day



  7. Web Site 'Patent Progress' Now Officially 'Powered by CCIA' (FRAND Proponent, Microsoft Front)

    After talking a job at CCIA, "Patent Progress" and its chief author should be treated as dubious on real patent progress



  8. Articles About the Death of Software Patents in the United States

    Recent coverage of software patents and their demise in their country of origin, where even proponents of software patents are giving up



  9. The Death of Software Patents is Already Killing Some Major Patent Trolls

    VirnetX seems to be the latest victim of the demise of software patents in the United States



  10. More Microsoft Layoffs

    More Microsoft layoffs go ahead as the company is unable to compete



  11. ODF on the Rise

    Milestones for OpenDocument Format (ODF) and the launch of FixMyDocuments



  12. Links 17/9/2014: CoreOS, ChromeOS, and systemd

    Links for the day



  13. Italy is Cracking Down on Microsoft's Monopoly Abuse While Gradually Moving to GNU/Linux

    Italy is not only moving to Free/Open Source software but also to GNU/Linux while at the same time barring Microsoft from forcibly tying Windows to new PCs



  14. OpenSUSE's 'Assurances' Are Classic MBA School Hogwash

    OpenSUSE is not part of any commitment, except for SUSE's; the impact of the Novell/SUSE acquisition casts uncertainty on the project's future



  15. Links 16/9/2014: Firefox OS Smartphones in Bangladesh, “Treasure Map” of the Internet

    Links for the day



  16. The United Kingdom Should Dump Microsoft For the Sake of National Security

    The UK has issues of Microsoft dependency and Windows viruses; its migration to Free software and GNU/Linux is not fast enough to guard its autonomy in the age of digital imperialism



  17. CBS Hires Even More Microsoft Staff to Cover Microsoft Matters

    CBS continues to be infested with Microsoft staff past and present (this time Dave Johnson) and the bias in output is quite revealing



  18. Microsoft Has Just Killed Minecraft for GNU/Linux and the Possibility of Free/Open Source Releases

    Persson sells out to Microsoft and lets the abusive monopolist destroy the popular cross-platform game that a community has been built around



  19. Another Reason to Boycott Intel UEFI

    More anti-competitive aspects are revealed inside UEFI, which helps merginalise GNU/Linux



  20. Quick Mention: Novell and SUSE Passed to Microsoft's 'Partner of the Year', Microsoft Focus

    Novell is changing hands again, and falling into the hands of even more Microsoft-friendly actors



  21. Links 16/9/2014: Linux 3.17 RC5, KDE Frameworks 5.2.0

    Links for the day



  22. Željko Topić, Benoît Battistelli, and the European Patent Office (EPO): Part II

    Part II of our look into the EPO appointment of Željko Topić and other matters showing the dubious integrity of the EPO



  23. Links 14/9/2014: Android-based Watches Earn Optimism

    Links for the day



  24. Links 14/9/2014: Eucalyptus Devoured

    Links for the day



  25. Links 11/9/2014: Linux Toilet Project, Linux-Based Wheelchair Project

    Links for the day



  26. Links 10/9/2014: Brian Stevens in Google, Ubuntu 14.10 Expectations

    Links for the day



  27. Links 9/9/2014: Hating/Loving Linux, Android Aplenty

    Links for the day



  28. Links 8/9/2014: Linux 3.17 RC 4, Switzerland Welcoming Snowden

    Links for the day



  29. Suspicion of High-Level Corruption at the European Patent Office (EPO): Part I

    The European Patent Office (EPO) Vice-President has a background of corruption and his appointment to the EPO too is believed to be reliant on systemic corruption



  30. Links 6/9/2014: Core OS at DigitalOcean, Women in Xorg

    Links for the day


CoPilotCo

RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Home iconSite Home: Background about the site and some key features in the front page

Chat iconIRC Channel: Come and chat with us in real time

CoPilotCo

Recent Posts