Affichage des articles dont le libellé est web apps. Afficher tous les articles
Affichage des articles dont le libellé est web apps. Afficher tous les articles

dimanche 10 mai 2009

A quick history of software platforms: How we got here, and where we're going

Intuit and Stanford recently asked me to give talks on computer platforms and what makes them successful. (By platforms I mean software with APIs that third party developers can write apps on top of; Windows and Macintosh are both platforms, as is Java.) Platforms are a hot topic in Silicon Valley these days. The success of the iPhone app store in mobile, and Facebook on the web, have forcefully reminded people that you can grow a tech business more quickly if you get third party developers to help you. Almost every tech company I work with is trying to expose some sort of API or platform offering in its products.

To explain how software platforms work today, I thought it'd be good to start with their history. But I wasn't sure about many of the details myself, so I ended up doing some research. The information was surprisingly hard to find, and also pretty controversial -- for every person who claims to be the first to have done something in computing, there's someone else who begs to differ. I did my best to sort through all the claims. The picture that developed makes an interesting story, but also has some very important lessons about where the industry might go next.

Fair warning: this is a long post. But I hope you'll feel that the destination is worth the trip.

Here's what I found:


Hardware memory, software amnesia

The computer industry is often criticized for its failure to remember its own history. Supposedly we're so focused on the new thing that we forget what's come before.

In reality, though, we're actually fairly good at remembering a lot of our hardware history (for example, Apple fans are celebrating the 25th anniversary of the Macintosh this year). There's passionate controversy over what was the first computer -- was it Konrad Zuse's Z1 (link), Tommy Flowers' Colossus (link), etc. The answer depends in part on your definition of the word "computer." But it's a well-documented disagreement, and you can find a lot of information about it online, including a cool timeline at the Computer History Museum (link).

The machine most commonly cited as the first fully programmable general-purpose electronic computer was ENIAC, the Electronic Numerical Integrator And Computer. It was completed in 1946 (link).


Here's ENIAC (well, part of it, anyway)

You can find lots of histories of ENIAC online (link). There are multiple simulators of it on the web (link), and the engineering school at the University of Pennsylvania even has an ENIAC museum online (link).

But when it comes to software, our memories are much hazier. For example, I doubt there will be a 25th anniversary celebration in 2010 for Aldus PageMaker, the program that did more than any other to make Macintosh successful. And about a day after I post this article -- May 12, 2009 -- will be the 30th anniversary of the introduction of Visicalc, the first spreadsheet program. Anyone planning a parade?

Today we take it for granted that you can use a computer for a variety of business or personal tasks, but it didn't always work that way. ENIAC and Colossus were government-funded tools for solving military and scientific problems. The US Army funded ENIAC, and in addition to calculating artillery tables, it was also used for tasks like weather prediction, wind tunnel design, and atomic energy calculations.


These nice ladies are programming ENIAC, by moving cables around.

How did we end up using computers for other purposes? The UPenn site says only, "it is recalled that no electronic computers were being applied to commercial problems until about 1951."

Yeah, "it is recalled." This is where I had to start digging. Once again there are disputes (link), but you can make a very good case that business computing started in the UK, and it involved something called a Swiss roll.


The first business computer

I had never heard of Joseph Lyons & Company, but in the 1950s they ran a chain of tea shops in the UK. I have to pause here for a second and explain what the term "tea shop" means. It's not a shop where you can buy bags of tea (which is what I assumed). Instead, it is what Americans call a coffee shop -- a fixed-menu restaurant that people would come to when they wanted to have a quick meal, snack, or meeting. The closest equivalent in the US these days is probably Denny's.

In the 1950s, Lyons had the biggest network of tea shops in the UK. It employed 30,000 people and served 150 million meals a year. The company sold 36 miles of Swiss roll a day (link).

(In case you're wondering, Swiss roll is a flat sponge cake rolled around a filling. Americans call it jelly roll. In India, it's called jam roll. In Sweden, rulltårta. In Japan, "roll cake." But in Spain, for some reason it's called brazo de gitano (gypsy's arm). Don't ask me why. [link] )


A Swiss roll made and photographed by Musical Linguist on 25 June 2006

Like every other company of its day, everything at Lyons was run on paper -- tallying 150 million receipts, calculating payroll, managing taxes, and even figuring out how many miles of Swiss roll you need to make for tomorrow's customers. All of that by hand with adding machines. It was an incredibly expensive and error-prone way of running a business, but it was the best anyone could do at the time.

When the people at Lyons first heard about these new computer thingies, they wanted one immediately to help run the business. But there wasn't any way to buy one. So they donated $5,000 (about $50k today) to Cambridge University to create a modified version of a computer that Cambridge had been working on.

The result was called LEO (Lyons Electronic Computer), and when it started regular operations on November 17, 1951, it was the world's first business computer. It occupied 5,000 square feet of floor space (about 500 square meters), and its 4k memory unit weighed half a ton because it was full of mercury. LEO's lead programmer was David Caminer, who is generally credited as either the world's first business software programmer or the first systems analyst. LEO's software let it handle -- guess what -- the same sorts of tasks we handle on business computers today: payroll, inventory, financials, and so on. It cut the time to calculate one employee's wages from eight minutes to 1.5 seconds (link).


David Caminer

Pause for a moment and think about the courage and vision it took for Lyons -- a catering company -- to build its own computer. There was no guarantee the process would succeed, and indeed the process took two years, with plenty of setbacks along the way.

But LEO was eventually a big success, and Lyons eventually spun it out as a separate computing subsidiary. Caminer went on to have a distinguished career in computing. He died in 2008, unfortunately, so we just missed our opportunity to say thanks to him. If you want to read more about LEO, Caminer co-wrote a book about it (link). Naturally, it's out of print, and the cheapest used copy when I looked it up was $75.


What is software, anyway?

One interesting aspect of LEO is that although Caminer and his team wrote software for it, that software was not available separately from the computer. That's the way the computing industry worked throughout the 1950s. For example, if you bought an IBM computer there was a set of standard IBM programs that ran on it.

In fact, the term "software" didn't even exist until it was popularized by John Tukey in 1958, more than ten years after ENIAC began operation (link). He wrote:

Today the "software" comprising the carefully planned interpretive routines, compilers, and other aspects of automative programming are at least as important to the modern electronic calculator as its "hardware" of tubes, transistors, wires, tapes and the like.

So the whole idea of software as a separate entity, a concept that we take for granted today, did not exist at the beginning of computing. The concept of making computers reprogrammable came along quite early, but it took a couple of decades for software to fully separate itself from hardware as its own distinct discipline.


John Tukey

(Naturally, there's some dispute about whether Tukey was the first to use the term "software." You can read about it here.)

Tukey was an interesting guy. He also created the term "bit," helped design the U-2 spy plane, and did a lot of other fascinating things (link).

If you want to read more about the history of software technologies, there's an essay here. And the best (and just about only) book on the history of the software industry is here.


Software as a business

Once we got the idea of software into our heads as a separate discipline, the next milestone in platform history was the creation of the first independent computer program, the first one you could buy separately from the hardware. As far as I can tell, that idea didn't just spring into being all at once; it emerged as a slow-motion avalanche over a period of 15 years.

Computer Usage Corporation, founded in 1955, is often cited as the first computer software company. It focused on custom programming services (link). Another very early custom programming company was CEIR, founded in 1954 (link). After them, a number of other custom programming firms sprang up. Sometime between 1962 and 1965, California Analysis Center, Inc. started selling a proprietary version of the Simscript programming language as a standalone product (the Computer History Museum says it was 1962 here, but CACI's own website says 1965 here). The 1962 date is the earliest I can find for any sort of independent software product. To my amazement, CACI is still selling Simscript today (link).

Several other programming languages and compilers came to market in the early 1960s, but there's disagreement over how much they actually sold, or whether they were really managed as independent products (link). A file management program called Mark IV, by Informatics, is credited as the first independent software product to generate more than a million dollars revenue. It was published in 1967 (link). That year also saw the first publication of the International Computer Programs Quarterly, the first commercial software catalog, which helped small software companies get to market at low cost (link). Think of it as a paper version of the iPhone App Store.

But if you want to find the first snowball that started the commercial software avalanche, I think it was tossed in 1964 when a contract programming company called Advanced Data Research was jerked around on a business deal by RCA.


The first commercial software product

In the mid-1960s, a cottage industry of contract programming firms did custom software development. When a new mainframe was in the works, its manufacturer would sometimes hire these firms to create software to offer with it. Computer owners could also hire those development houses to write create custom software for them. The idea of off-the-shelf software didn't exist; you got it for free with your computer, had it written for you, or developed it yourself.

RCA, which at the time was a promising mainframe company, approached ADR asking them to create a program to draw flow charts of computer programs (the flow charts were used for documentation and debugging). That may not sound like a big deal today, but in the early days of computing the industry didn't have the sort of automated debugging tools it has today. A flowchart was very useful to help maintain and document a custom software program after the project was finished.

So ADR created a proposal and submitted it to RCA. Fortunately for the computer industry, RCA turned it down, as did every other mainframe company. But ADR believed in its concept, so it decided on its own to develop the product anyway. It spent over $5,000 (about $35k in today's money) and half a man-year on the project.

But RCA was not impressed. Once again they said no.

Now ADR had a sunk cost. In business school they teach you to walk away from those, but in real life companies hate to admit they made a mistake. So ADR decided to try marketing the software on its own. They named it Autoflow, and wrote a letter to all 100 RCA mainframe owners offering them the program for $2,400 on a three year lease. It was three milestones in one: the first commercial software program, the first subscription software, and the first junk mail urging you to buy a software program.

ADR sold two licenses.

That may not sound like much, but somebody at ADR did the math -- if we sold two copies to 100 RCA customers, what would happen if we offered our software to IBM's much larger installed base? So ADR ported Autoflow to IBM mainframes. In the second half of the1960s it sold more than a thousand licenses of Autoflow, and created a portfolio of other independent software programs for IBM systems.

IBM was not pleased. Nobody was supposed to mess with the IBM customer base; that might weaken IBM's control over its customers. The company created its own flow charting software, which it gave away for free to its customers, and started to copy ADR's other programs as well. This became a huge competitive problem for ADR -- even if its software worked better than IBM's, it was hard to compete with free. IBM was also able to freeze the market for ADR by promising that it would in the future offer a free version of something ADR was currently selling. Customers would delay ADR purchases until they could evaluate the IBM product.

ADR and other fledgling software companies complained to the US government. In 1969, the Justice Department, ADR, and several others filed antitrust suits against IBM. ADR collected $2 million in penalties, and IBM agreed to stop bundling free software with its computers.

And thus the independent software industry was born.



Martin Goetz (above) was the product manager of Autoflow. I wrote to him and asked for his take on which was the first software product. Here's his reply:

Autoflow was recognized as the first software product to be commercially marketed. Starting in 1964, ADR licensed its products nationally and through ads in all the major computer publications, started investing in the development of other products and became known as a software products company.

I think that's the right way to look at it: Autoflow was the first software product to be commercially marketed, which is why I call it the snowball that started the avalanche. Informatics' Mark IV also played an important role because its financial success validated the market -- reportedly it was the top-selling software product for the next 15 years (link).

Goetz says Mike Guzik was the lead programmer on Autoflow (link), and he cites ADR President Dick Jones as a strong supporter of the idea (link). I think we should credit Goetz and Guzik as the creators of the first commercial software application, although neither of them has an entry in Wikipedia.

Incidentally, Goetz also holds the first software patent:


Computerworld, June 1968

That has to be one of the most visionary headlines in the history of the computer press: "Full Implications Are Not Yet Known." Here we are 41 years later, and it's still accurate.

Goetz was named the "Father of Third-Party Software" by mainframezone.com (link) and there's a very interesting interview with him here. You can find a much longer interview here and his memoirs are here.

Advocates of open source software will probably view Goetz as a bad guy, since he helped make software a for-profit industry. But he has some pretty strong opinions about the poor quality and slow innovations that happened in software when it was only free. In particular, he says that a completely free software industry was not responsive to the needs of users (link).

An amusing anecdote complaining about Goetz, apparently written by a former ADR employee, is here. I can't verify the anecdote, but if nothing else it shows that ADR was also a pioneer in the practice of engineers making catty comments about product managers.

(I should add that there are some different interpretations of the effect of IBM's unbundling decision. One is in a very interesting interview with the creator of the ICP catalog here.)


The rise of the third party application platform

The next evolutionary step was for computer companies to see their products as development platforms -- for them to actively encourage software developers rather than viewing them as a nuisance. I haven't been able to figure out when in the 1970s this change in perspective happened (please post a comment if you know the history). It may have happened in the era of minicomputers, or it may have been a PC thing. Definitely Dan Bricklin and Bob Frankston's VisiCalc, the world's first spreadsheet program, played a role when it came to market for the Apple II in 1979. It was so revolutionary that reviewers at the time didn't know how to describe it. They just said it was a way to make the computer do things you want it to do, without writing your own program. VisiCalc established the idea of the "killer app," a software program so popular that it drove demand for the underlying hardware.

"Visicalc could some day become the software tail that wags (and sells) the personal computer dog."
--Ben Rosen, co-founder of Compaq, reviewing VisiCalc when we was still an analyst with Morgan Stanley. Nice call, Ben. (Link)

By the early 1980s, software developers were being actively courted by computer manufacturers. Apple had a developer recruitment team for the Macintosh, and apparently coined the term "software evangelism." That's where Guy Kawasaki cut his eyeteeth, although he wasn't the first evangelist. As he puts it:

"Mike Boich started evangelism and hired me, and Alain Rossman worked with me as a software evangelist. Essentially, Mike started evangelism, Alain did the work, and I took the credit." (Link)

I happen to know that Guy did a bit of the work too.

The other critical change in the 1980s was the separation of the OS from the underlying hardware. Most of the new PC software platforms had been tied to hardware, just like traditional computers. For example, you had to buy a Macintosh in order to run Mac software, or an Amiga in order to use Amiga apps. But then IBM created the PC, and through a series of business blunders allowed Microsoft to separately sell the DOS operating system used on its hardware. IBM's brand and marketing power established the PC as a standard, but the company enabled Microsoft and Intel to create a "clone" hardware market, and eventually drive IBM out of the PC business.

So now there were three layers in the industry -- the application was independent of the OS, and the leading OS was independent of the hardware.


The network strikes back

That's where the situation sat until the late 1990s, when Java and web browsers threatened to create another layer in the architecture by separating software applications from the OS. The theory was that instead of writing programs that depended on Windows, programmers could create code that worked on Java, or on the Netscape browser.

Microsoft fought back very aggressively, killing Netscape by giving away Internet Explorer, and crippling Java on the PC. Looking back, it was an impressive use of business muscle, worthy of Microsoft's tutor IBM.

But it was also a pyrrhic victory. Microsoft's actions in the 1990s forced software innovation completely off the PC platform, because investors were afraid that new software apps would just get cannibalized by Microsoft. Instead software innovation moved onto the web, where Microsoft had virtually no control. That's one of several reasons why the next generation of software is being written as web apps.

And that's where we are today.


Where we go next

As I said at the start of the post, I think all of this history is fun in its own right. I also wanted to take this opportunity to thank some of the people who built the tech industry into the fun place it is today.

But understanding computing history is also very important because, if you look across the sweep of it from the 1940s to today, it's much easier to see where we might go next.

Here's what I think that long perspective shows us: The history of software is a history of disaggregation. First the application software gets separated from the hardware, then the OS gets separated from the hardware, and so on.

I think disaggregation is a natural outcome of the maturation of the industry, because multiple companies can move faster than a single one. At the start you need everything coordinated together to make sure the whole thing will work. But over time, no single company can pursue all of the innovation possibilities, so you get a backlog of potential creativity that can happen only if control over the architecture is broken into pieces.

For example, most of the interesting innovation in applications happened only after they were separated from the hardware.

But as the industry continues to grow, each of the pieces becomes its own stodgy monolith, and eventually another subdivision happens.

The fastest growth and the easiest innovation has generally happened at the leading edge of disaggregation, because each change creates new business opportunities.



That doesn't mean that old school companies are dead. IBM still sells mainframes, and Apple still makes PCs bundled with an OS. But to succeed in an old paradigm you have to execute extremely well, and it's much harder to grow explosively. The easiest progress is made at the leading edge.

A common thread among the people working at the leading edge of disaggregation is their excitement as they recognize the opportunities created by the change:

"There was a tremendous euphoria of success. You couldn't lose. All you needed was a group of highly technical people who could create a software product and that was it. And to some degree there was some truth to that. Because you didn't have to be good sales people. You didn't have to worry about the competition. For years I used the aphorism that we were like little boys on the beach each with our sand piles. There was plenty of sand to put in our buckets. We didn't have to edge out the other little boy to get all the sand we needed. We were limited by the size of our pail and our little shovels but not by the amount of the beach that was there or the fact that there was another little boy there with his pail."

That's Walter Bauer, cofounder of Informatics, talking about the birth of the independent software industry in the 1960s (link). But you could find similar sentiments from the people who built the first computers, or the first Mac programmers, or the first web app developers. The leading edge of disaggregation is where the action is; it's where the fun happens.

So, if you're looking to succeed in the software industry, it's extremely important to figure out what's going to get disaggregated next. Which brings us to the point of this article.


Say hello to the metaplatform

Sun's rallying cry in the 1990s was, "the network is the computer" (link). It was an excellent insight that pointed to the emerging importance of the Internet, but most of the industry misread what it meant. We looked at the architecture of the thing we knew best, the PC, and tried to map it directly to the network. So servers would replace the PC hardware, and software on those servers would replace Windows. The PC itself would be reduced to light client, a screen connected to a wire.


What we expected

But instead of a new OS on the network replacing the OS on the PC, what we're seeing is the breakdown of the OS into component parts that live everywhere, on both the client and the server.

In other words, the OS is the next thing that gets disaggregated.


What's actually happening

People have been talking about elements of this change for years, but like the proverbial blind men feeling bits of the elephant, we've talked about individual pieces of it, with each of us assuming that the piece in front of us was the most important. So people producing software layers like Java and Flash say that they are separating the APIs on the device from the underlying OS. And the advocates of cloud computing say they're creating a software services architecture that runs on servers. But in reality we're doing both of those things, and a lot more. The OS is dissolving into a soup of resources distributed across both the network and the local device, with the application in the middle calling on both as appropriate. We need to get off the idea that the network or the client will be dominant; they're both supporting elements in something larger.

You can see this process operating in the evolution of web applications. The first web app companies tried to make applications that were entirely light client, but they didn't work particularly well -- they were slow, and their user interfaces were too limited. Web apps took off only when they adopted an approach in which the platform was split between the PC and the network -- the user interface ran locally through the browser, while back-end calculation and data storage was done on the network.

Mobile computing reinforces the need for this sort of hybrid architecture. Wireless broadband has important limitations that make pure light client computing extremely problematic. Wireless networks are relatively slow compared to wired networks, there's high latency on them, coverage is inconsistent, heavy communication drains device batteries rapidly, bandwidth is expensive, and most importantly, total wireless bandwidth is limited. The most effective mobile application are and will continue to be hybrids of local and network resources, like RIM's e-mail solution.

Companies entering the mobile market often ask me which mobile operating systems are going to win long term. I think that's the wrong question. What we're seeing is the gradual evolution of a super-OS that includes both the network and the device.

Like software developers before the word "software" was invented, we don't have a name for this new thing, and so we have trouble talking about it. It's not just the Network or the Cloud, because those terms are usually understood not to include the software on the client computer. And it's certainly not just the local APIs on the client device.

I'm calling it the "metaplatform" because it subsumes all other platforms. No single company controls the metaplatform. Google obviously contributes a lot to it, as does Amazon Web Services, as does Microsoft. But they're only fragments of the picture. There are thousands of other contributors to the metaplatform, in areas ranging from mapping to graphics to identity.

There's still a lot of work that needs to be done on the metaplatform, especially in the mobile space. But already it's evolving faster than any single company could move it, because the work is divided across so many companies, and because there's competition driving innovation at almost every point in the architecture. Although the metaplatform isn't necessarily elegant (because it's poorly coordinated), what it lacks in beauty it more than makes up for in rate of change and versatility.


New opportunities

The metaplatform helps to solve some computing problems, but creates others. For example, a recurring problem for software in the OS era has been compatibility. Old data files, even when perfectly preserved, can become unreadable if the hardware and software that created them is no longer available. A lot of software is very dependent not just on the hardware, but on the particular version of the OS it's running on. (If you want to see that effect in action, try running a ten-year-old Windows game on a new PC. It may work, it may refuse to run at all -- or it may freeze right when you're about to defeat the boss bad guy.)

The metaplatform is helping to resolve some compatibility problems, through emulators available online. But more importantly, web apps on a PC are less vulnerable to PC-style compatibility breakdowns because PC browsers are relatively standardized, and much of the OS code the web app relies on lives on the same server as the app itself, so they are less likely to get out of sync.

But metaplatform-based software is uniquely vulnerable to a new set of problems. When a user's data is stored on a web app company's server 3,000 miles away, what happens if that company goes out of business or just decides to stop maintaining the product?

Another problem experienced by any website using plug-ins is component breakage. If you've incorporated external web services into your site, the site will break if any of those services stops working. This can happen without warning. On my own weblog, the load time for the site suddenly became ridiculously long. It took me weeks to realize that a user-tracking service I'd once signed up for had gone out of business without telling anyone. My site stopped loading while it tried helplessly to connect to a tracking site that no longer existed.

An old software application from the OS era has some hope of revival if you have a copy of the CD, because all the code that made up the app is together in one place. But an old, broken web app will be almost irretrievably dead, because huge chunks of its code will be missing.

Problems like these are just starting to emerge, but as the metaplatform grows and ages they'll become much more prominent. We don't have any systematic ways to deal with problems like these today -- which means they're a business opportunity for the next crop of software entrepreneurs.


What the metaplatform means to you

Much of the discussion in this post is pretty theoretical. But I think it has important practical implications. Here are a few specifics to think about:

If you're a computer user (and if you're reading this, you must be), keep in mind that the most interesting new software innovations are likely to come from companies that consciously work the metaplatform. If you want to be at the leading edge of software innovation, you should keep yourself open to experimenting with new web applications and plug-ins, and make sure your browser doesn't artificially cut you off from some technologies. This is especially true for mobile devices. The iPhone today gives (in my opinion) the best overall mobile browsing and app discovery experience, but you pay a price for it -- you're cut off from some web technologies (Flash, Java) and your choice of applications is limited by the Apple app police. You pay a serious price for the superior user experience of the iPhone. That price is worth paying today, but in the future I hope there will be mobile devices that are as satisfying as the iPhone but less controlled. Actually, I'm sure that will happen over time. But "over time" can sometimes mean a long time in the future. You can help the process along with what you buy and by the feedback you give to device manufacturers.

Are you working at an OS company? If so, you probably measure success by the number of devices your software controls. You need to rethink that viewpoint. The OS is going to be less and less of a technology control point in the future. It will become commodity plumbing underneath the metaplatform, limiting your ability to charge a lot of money for it. So at a minimum, you need to plan for cost control.

But you should also be asking if plumbing is the right place for your company's creativity in the long term. There will be much more profit opportunity in contributing to the metaplatform by creating APIs and developer functionality that can be used across different operating systems. OS companies have many of the assets needed to build those components of the metaplatform. A successful OS can be a great launching point for technologies that run across platforms, because you already have a big installed base that you can use to jump-start the technology's adoption.

Are you at an application company? Many successful app vendors are trying to create APIs that will enable other developers to extend their products. This is the right idea, but the implementation is often off-target. Many of the app companies I talk to are trying to make their APIs into the business equivalent of an operating system, with developers coming to them and living entirely within their private ecosystem. A warning sign is when a company uses a phrase like, "(insert company name) developer network" to describe its offering.

The wave of the future is not turning an application inward into its own little walled garden; it's opening the application outward so it can be mixed and matched with other functionality in the metaplatform. If you have the best drawing program in the industry, you should be asking how you can also become the best drawing module in the metaplatform. Get used to being a component in addition to a standalone product. You lose some identity in the process, but gain greater opportunities to grow.

And besides, if you don't do it, you'll be vulnerable to someone else doing it and taking your place.

If you're a computing student, or a computing veteran looking to create a new product, think about what role you can play in the metaplatform, and what customer problems you can solve with this new tool. There will be big market openings in both products for users and companies, and infrastructure for other developers in the ecosystem (billing, rights management, security, etc).

As in previous generations of software, the answers are not immediately obvious, and the people who figure them out first will have huge opportunities to do something impactful. Like Caminer, Goetz, Bauer, Bricklin, and Frankston, you're on an enormous beach with a trowel and bucket, and you have a chance to shape the next generation of computing.

Have fun.

====

I'd like to thank Eugene Miya of NASA Ames and Martin Goetz for helping with the research that contributed to this article. They're not responsible for any errors I made, but they definitely corrected some.

I'm sure there are folks out there who have additional information on the history I wrote about here. If you have anything to add (or correct) please post a comment.

jeudi 1 mai 2008

Adobe frees mobile flash: It's about time

Today Adobe announced a series of changes to its emerging web applications platform. The changes include:

--The next version of the mobile Flash runtime will be free of license fees. Adobe also confirmed that the mobile version of the Air runtime will be free.

--Adobe changed its licensing terms and released additional technical information that will make it easier for companies to create their own Flash-compatible products.

--The company announced a new consortium called Open Screen supporting the more open versions of Flash and Air. Members of the new group include the five leading handset companies, three mobile operators (including NTT DoCoMo and Verizon), technology vendors (including Intel, Cisco, and Qualcomm), and content companies (BBC, MTV, and NBC Universal). Google, Apple, and Microsoft are not members. It's not clear to me what the consortium members have actually agreed to do. My guess is it's mostly a political group.

Adobe said that the idea behind the announcements is to create a single consistent platform that lets developers create an application or piece of content once and run it across various types of devices and operating systems. That idea is very appealing to developers and content companies today. It was equally appealing two years ago, when then-CEO of Adobe Bruce Chizen made the exact same promise (link):

If we execute appropriately we will be the engagement platform, or the layer, on top of anything that has an LCD display, any computing device -- everything from a refrigerator to an automobile to a video game to a computer to a mobile phone.

If Adobe had made the Open Screen announcement two years ago, I think it could have caught Microsoft completely flat-footed, and Adobe might have been in a very powerful position by now. But by waiting two years, Adobe gave Microsoft advance warning and plenty of runway room to react -- so much so that ArsTechnica today called Adobe's announcement a reaction to Microsoft Silverlight (link).

Also, the most important changes appear to apply to the next version of mobile Flash and the upcoming mobile version of Air -- meaning this was in part a vaporware announcement. Even when the new runtime software ships, it will take a long time to get it integrated into mobile phones. So once again, Microsoft has a long runway to maneuver on.

Still, the changes Adobe made are very useful. There's no way Flash could have become ubiquitous in the mobile world while Adobe was still charging fees for it. The changes to the Flash license terms remove one of the biggest objections I've seen to Flash from open source advocates (link). The Flash community seems excited (link, link). And the list of supporters is impressive. Looking through the obligatory quotes attached to the Adobe release, two things stand out:

--Adobe got direct mentions of Air from ARM, Intel, SonyEricsson, Verizon, and Nokia (although Nokia promised only to explore Air, while it's on the record promising to bundle Silverlight mobile).

--The inclusion of NBC Universal in the announcement will have Adobe people chuckling because Microsoft signed up NBC to stream the Olympics online using Silverlight. So NBC is warning Microsoft not to take it for granted, and Adobe gets to stick its tongue out.


What does it all mean?

Nothing much in the short term. As I mentioned earlier, this is mostly a vaporware announcement (other than the license changes). Some people are speculating that this will put pressure on Apple to make Flash available on the iPhone (link). That's possible, if Apple's real concern was that they didn't like Flash Lite. Now they can port full Flash, or someone else can do it. But if Apple is in reality unwilling to let anyone else's platform run on the iPhone then we'll see other objections to Flash emerge.

The marketing competition to control the future of web apps is continuing to heat up. Microsoft is trying to take the whole thing proprietary by creating a comprehensive architecture, Adobe is trying to drive its own platform, Sun is trying to re-energize Java, Google is making its own moves, and so on (link). Plus, of course, most web app developers today are happy with what they're using now and have little interest in switching to any of the new architectures (check out the dandy commentary by Joel Spolsky here).

It's an enormously complex situation, and it's going to take months, if not years, before we can start to see who's winning and who is losing. Rubicon is working on a white paper that will try to clarify the situation a bit. I'll let you know when it's published.

In the meantime, enjoy the marketing fireworks. The intense competition is forcing companies to innovate faster and open up their products, as Adobe did today. I think that process is good for just about everyone in the industry.

dimanche 24 février 2008

Mobile applications, RIP

Summary: The business of making native apps for mobile devices is dying, crushed by a fragmented market and restrictive business practices. The problems are so bad that the mobile web, despite its many technical drawbacks, is now a better way to deliver new functionality to mobiles. I think this will drive a rapid rise in mobile web development, largely replacing the mobile app business. This has huge implications for mobile operators, handset companies, developers, and users.


The decline of the mobile software industry

Mobile computing is different from PC computing.

For the last decade, that has been the fundamental rule of the mobile data industry. It was the central insight of Palm Computing's "Zen of Palm" philosophy. Psion came up with similar ideas, and you can hear echoes of them from every other successful mobile computing firm: Mobile computers are used differently from PCs, and therefore must be designed differently.

We all assumed this also meant mobile devices needed a whole mobile-specific software stack, including an operating system and APIs designed specifically for mobility, and native third-party applications created from the ground up for mobile usage.

That's what we all believe, but I'm starting to think we got it wrong.

Back in 1999 when I joined Palm, it seemed we had the whole mobile ecosystem nailed. The market was literally exploding, with the installed base of devices doubling every year, and an incredible range of creative and useful software popping up all over. In a 22-month period, the number of registered Palm developers increased from 3,000 to over 130,000. The PalmSource conference was swamped, with people spilling out into the halls, and David Pogue took center stage at the close of the conference to tell us how brilliant we all were.

It felt like we were at the leading edge of a revolution, but in hindsight it was more like the high water mark of a flash flood. In the years that followed, the energy and momentum gradually drained out of the mobile applications market.

The problem wasn't just limited to Palm; the level of developer activity and creativity that we saw in the glory days of Palm OS hasn't reappeared on any mobile platform since. In fact, as the market shifted from handhelds to smartphones, the situation for mobile app developers has become substantially worse.

That came home to me very forcefully a few days ago, when I got a call from Elia Freedman. Elia is CEO of Infinity Softworks, which makes vertical market software for mobile devices (tasks like real estate valuation and financial services). He was one of the leaders of the Palm software market, with a ten year history in mobile applications.

I eventually moved on from Palm, and Elia branched out into other platforms such as Blackberry. But we've kept in touch, and so he called recently to tell me that he had given up on his mobile applications business.

Elia gave me a long explanation of why. I can't reproduce it word for word (I couldn't write that fast), but I've summarized it with his permission here:

Two problems have caused a decline the mobile apps business over the last few years. First, the business has become tougher technologically. Second, marketing and sales have also become harder.

From the technical perspective, there are a couple of big issues. One is the proliferation of operating systems. Back in the late 1990s there were two platforms we had to worry about, Pocket PC and Palm OS. Symbian was there too, but it was in Europe and few people here were paying attention. Now there are at least ten platforms. Microsoft alone has several -- two versions of Windows Mobile, Tablet PC, and so on. [Elia didn't mention it, but the fragmentation of Java makes this situation even worse.]

I call it three million platforms with a hundred users each (link).

The second technical issue is certification. The walls are being formed around devices in ways they never were before. Now I have to certify with both the OS and with each carrier, and it costs me thousands of dollars. So my costs are through the roof. On top of that, the adoption rate of mobile applications has gone down. So I have to pay more to sell less.

Then there's marketing. Here too there are two issues. The first is vertical marketing. Few mobile devices align with verticals, which makes it hard for a vertical application developer like us to partner with any particular device. For example, Palm even at its height had no more than 20% of real estate agents. To cover our development costs on 20% of target customer base, I had to charge more than the customers could pay. So I was forced to make my application work on more platforms, which pushed me back into the million platforms problem.

The other marketing problem is the disappearance of horizontal distribution. You used to have some resellers and free software sites on the web that promoted mobile shareware and commercial products at low or no charge. You could also work through the hardware vendors to get to customers. We were masters of this; at one point we were bundled on 85% of mobile computing devices. We had retail distribution too.

None of those avenues are available any more. Retail has gone away. The online resellers have gone from taking 20% of our revenue to taking 50-70%. The other day I went looking for the freeware sites where we used to promote, and they have disappeared. Hardware bundling has ended because carriers took that over and made it impossible for us to get on the device. Palm used to have a bonus CD and a flyer that they put in the box, where we could get promoted. The carriers shut down both of those. They do not care about vertical apps. It feels like they don't want any apps at all.

You can read more of Elia's commentary on his weblog (link).

Add it all up, and Elia can't make money in mobile applications any more. As he told me, "Mike, it's time for you to write the obituary for mobile apps." More on that later.

Although it's a very sad situation, if Elia's experience were an isolated story I'd probably just chalk it up to bad luck on the part of a single developer. But it mirrors what I've been hearing from a lot of mobile app developers on a lot of different operating systems for some time now. The combination of splintering platforms, shrinking distribution channels, and rising costs is making it harder and harder for a mobile application developer to succeed. Rather than getting better, the situation is getting worse.

I've always had faith that eventually we would solve these problems. We'd get the right OS vendor paired with a handset maker who understood the situation and an operator who was willing to give up some control, and a mobile platform would take off again. Maybe not Palm OS, but on somebody's platform we'd get it all right.

I don't believe that any more. I think it's too late.


The mistake we made

We told ourselves that the fundamental rule of our business was: Mobile is different. But we lost sight of an even more fundamental law that applies to any computing platform:

A platform that is technically flawed but has a good business model will always beat a platform that is elegant but has a poor business model.

Windows is the best example of inelegant tech paired with the right business model, but it has happened over and over again in the history of the tech world.

In the mobile world, what have we done? We created a series of elegant technology platforms optimized just for mobile computing. We figured out how to extend battery life, start up the system instantly, conserve precious wireless bandwidth, synchronize to computers all over the planet, and optimize the display of data on a tiny screen.

But we never figured out how to help developers make money. In fact, we paired our elegant platforms with a developer business model so deeply broken that it would take many years, and enormous political battles throughout the industry, to fix it -- if it can ever be fixed at all.

Meanwhile, there is now an alternative platform for mobile developers. It's horribly flawed technically, not at all optimized for mobile usage, and in fact was designed for a completely different form of computing. It would be hard to create a computing architecture more inappropriate for use over a cellular data network. But it has a business model that sweeps away all of the barriers in the mobile market. Mobile developers are starting to switch to it, a trickle that is soon going to grow. And this time I think the flash flood will last.

If you haven't figured it out yet, I'm talking about the Web. I think Web applications are going to destroy most native app development for mobiles. Not because the Web is a better technology for mobile, but because it has a better business model.

Think about it: If you're creating a website, you don't have to get permission from a carrier. You don't have to get anything certified by anyone. You don't have to beg for placement on the deck, and you don't have to pay half your revenue to a reseller. In fact, the operator, handset vendor, and OS vendor probably won't even be aware that you exist. It'll just be you and the user, communicating directly.

Until recently, a couple of barriers prevented this from working. The first was the absence of flat-rate data plans. They have been around for a while in the US, but in Europe they are only now appearing. Before flat-rate, users were very fearful of exploring the mobile web because they risked ending up with a thousand-Euro mobile bill. That fear is now receding. The second barrier was the extremely bad quality of mobile browsers. Many of them still stink, but the high quality of Apple's iPhone browser, coupled with Nokia's licensing of WebKit, points to a future in which most mobile browsers will be reasonably feature-complete. The market will force this -- mobile companies how have to ship a full browser in order to keep up with Apple, and operators have to give full access to it.

There are still huge problems with web apps on mobile, of course. Mobile web apps don't work when you're out of coverage, they're slow due to network latency, and they do not make efficient use of the wireless network. But I believe it will be easier to resolve or live with these technical drawbacks in the next few years than it will be to fix the fundamental structural and business problems in the native mobile app market.

In other words, app development on the mobile web sucks less than the alternative.

Here's a chart to help explain the situation. Imagine that we're giving a numerical score to a platform, rating its attractiveness to developers. Attractiveness is defined as the technical elegance of the platform multiplied by how easy it is for developers to make money from it. The attractiveness score for native mobile app development looks like this over time:



This is why mobile app developers are in trouble. Even though the base of smartphones has been growing, and the platforms themselves have become more powerful, the market barriers have been growing even faster. So attractiveness has been dropping.

Now add in mobile web development:



Based on what I'm hearing from mobile developers, the lines just crossed. The business advantages of mobile web development outweigh its technical limitations. More importantly, if you look at where the lines are going, the advantage of mobile web is going to grow rapidly in the future.

I'm not saying all native mobile development is dead. In fact, we're about to see the release of Apple's native development tools for the iPhone, and as Chris Dunphy just pointed out to me, they are sure to result in a surge of native development for that platform. But I think even a rapidly-growing base of iPhones can't compare to the weight of the whole mobile phone market getting onto a consistent base of browsers.


What it all means

If you're a mobile developer, you should consider stopping native app development and shifting to a mobile-optimized website. That's what Elia did, and he said it's amazing how much easier it is to get things done. Even mobile game developers, who you'd think would be the last to abandon native development, are looking at web distribution (link; thanks to Mike Rowehl for pointing it out).

See if you can create a dumbed-down version of your application that will run over the mobile web. If the answer is yes, do it. If the answer is no, try to figure out what technology changes would let you move to the web, and watch for those changes to happen.

There are exceptions to any rule, and I think it makes sense to keep doing native development if your app can't work effectively over the web, and it's a vertical application so popular that you can get about $50 or more in revenue per copy. In that situation, you probably have enough resources to stay native for the time being. But even you should be monitoring the situation to see when you can switch to the web, because it will cut your expenses.

If you're a mobile customer, make sure your next smartphone has a fully functional browser that can display standard web pages. And get the best deal you can on a flat-rate data plan; you'll need it.

If you're an operator or a handset vendor, get used to life as a dumb pipe. By trying to control your customers and make sure you extract most of the revenue from mobile data, all you've done is drive developers to the Web, which is even harder to control. You could have had a middle ground in which you and mobile developers worked together to share the profits, but instead you've handed the game to the Google crowd.

Congratulations.


Oh, about that obituary...

In loving memory of the mobile applications business. Adoring child of Java, Psion, Palm OS and Windows Mobile; doting parent of Symbian, Access Linux Platform, and S60; constant companion of Handango and Motricity. Scared the crap out of Microsoft in 2000. Passed away from strangulation at the hands of the mobile industry in 2008. Awaiting resurrection as a web service in 2009. In lieu of flowers, the family asks that you make a donation to the Yahoo takeover defense fund.

mardi 29 janvier 2008

Nokia, the OS company

Nokia bought Trolltech for about $150 million, and there's all sorts of speculation online about what it means. Before I get to that, let me quickly summarize what Trolltech does:

Trolltech is a Norwegian company that makes development tools and Linux software. Its best-known products are Qt (a software layer and development tools for writing applications that run across multiple operating systems, including Windows, Mac, and Linux), Qtopia (a user interface and applications layer for Linux), and Qtopia Phone Edition (a Linux software environment for mobile phones).

In the mobile world, Qtopia Phone Edition has been the company's best-known product, although it hasn't exactly been a commercial success. Motorola uses a version of Qt in its Linux mobile phones, but not all of Qtopia. The Sony Mylo mobile device uses Qtopia, as did the Sharp Zaurus PDAs. But Trolltech had so much trouble getting a mainstream phone licensee for Qtopia that it created its own hardware prototype, the Greenphone. (Out of fairness, I should add that Trolltech has a lot of other tiny licensees you've never heard of; you can see the full list here.)

The obvious assumption would be that Nokia bought Trolltech for its phone technology, but that's not what Nokia says. The company's press release says Trolltech will help advance its "cross-platform software strategy for mobile devices and desktop applications, and...Internet services business. With Trolltech, Nokia and third party developers will be able to develop applications that work in the Internet, across Nokia's device portfolio and on PCs."

All About Symbian reinforced that message, reproducing a slide from the Nokia press briefing that showed Qt layered on top of Nokia Series 40, S60, and a variety of desktop PC operating systems (link). The Guardian quoted a Nokia spokesperson as saying the emphasis of the deal is development tools: "This is about Trolltech's fantastic tools. You can much faster develop programmes which can work on multiple platforms." (link).

Vnunet quoted an analyst saying that Nokia will use Qtopia to help deploy its Ovi Internet services cross-platform (link). I don't really see the Internet connection; Qtopia has not been a contender in the net applications world the way that Flash and Silverlight are. But maybe Nokia wants to build it into a contender.

Other analysts suggested other motivations for the purchase. Some of the commentary on Slashdot suggested that Nokia is investing in Linux to counter Google Android (link). ArsTechnica suggested that Nokia might be planning to replace S60 with Qt (link), while others suggested that Nokia plans to use Linux instead of Symbian. Richard Windsor of Nomura pointed out in an e-mail analysis that the purchase of Qt rips the guts out of Motorola's Linux plans, although he guesses that's more of a happy side effect for Nokia than the primary motivation.

But an unsigned article on ZDNet UK had the most sweeping interpretation, basically saying that this spells certain death for all proprietary operating systems (link):

Nokia's bet is that the sheer size of the Qt 4-based market will be a decisive inducement for everyone else, handset makers, operators, and pure applications players alike, and that the explosion in compatibility will amplify the market for everyone much as happened on the desktop when MS-DOS anointed the PC architecture. But unlike then, Qt 4 will break forever the idea that one part of the market can seal itself off as a profitable mini-universe, an idea as archaic in the 21st century as the feudalism it so closely resembles.

As we say here in California, I want some of what he's been smoking.


What does it really mean?

We're all assuming that Nokia actually has a coherent master plan here. Although $150m is a lot of money to me personally, it's mouse nuts to Nokia. Maybe Nokia bought Trolltech just as an experiment, or to keep it from falling into some other company's hands. The fact that Nokia's going to continue to develop its Maemo version of Linux, which is not based on the Trolltech technology, suggests a certain amount of incoherence.

If you want to be really Machiavellian, you could speculate that this purchase is the Nokia mobile phone organization's answer to Maemo -- "you tablet guys keep your version of Linux, now we have our own."

But let's assume there really is a plan, and it's aimed at competitors. About six months ago, I wrote about Nokia's ambitions to be a computer company (link). Now we see them dealing themselves into the operating system competition as well. No matter what you think Nokia's motives are, the fact is that it's now the owner of a respectable cross-platform software layer that runs on PCs and mobile devices. Nokia is now a software layer company, in very direct competition with other layer companies like Microsoft and Adobe and Sun. The deal also makes Nokia a much more important player in the open source community. And it puts Nokia in more direct opposition to the companies with their own operating systems -- Apple and Google and (once again) Microsoft.

That's a huge potential change. I say "potential" because Nokia has a lot more to do if it really wants to compete. The Trolltech team will need more investment (they have been losing money) and Nokia has a lot of work to do in developer evangelism and support to make the challenge real. But the potential is there.

I think that as the implications of the deal become clear, Nokia may have trouble continuing to partner with some of its new competitors. For example, it has spent a lot of time positioning itself as a partner to Adobe Air, but it's hard to see the evolved Qt as anything other than a competitor. Same thing for Google.

As for how this fits with all of Nokia's other products, I'm having a lot of trouble understanding how Qt will cohabit with S60 and Series 40. What exactly are developers supposed to develop for, and which user interface will the phones feature? If Nokia tries to keep all of them going, its phone software is going to look like a petit four, with layers stacked on layers stacked on layers. That makes for a nice pastry, but in a mobile phone it's a recipe for bad performance and short battery life. It's also a certain way to confuse developers.

So a lot depends on Nokia's next steps. Does Qt replace Series 40 and S60? I don't know which group within Nokia made the Trolltech deal, but I wonder if the biggest competitive battle might end up being the one inside the company, between its competing software standards.

mercredi 26 septembre 2007

Who's really using web apps, and why?

In my work at Rubicon, we spend much of our time helping tech companies with strategy and product planning. One recurring theme is the impact of web applications. We help web app companies figure out their customers and product plans, and we help traditional tech companies understand web apps and what to do about them.

As we do this work, we repeatedly run into a lack of basic information about how web apps are being used -- how many people use them, who uses them, which apps they use, and so on. There's a lot of anecdotal information from individual web companies on how they're doing, but almost nothing on the usage of web apps across the industry as a whole.

So we decided to fill that hole. This summer we did a survey of about 2,000 US adult PC owners on their usage of web applications. We released the results this morning at the AjaxWorld conference. Some highlights:

--37% of US home PC owners use at least one web application on a regular basis. Usage has already spread far beyond early adopters.

--Usage varies dramatically by app category. E-mail and games are the two most popular web app categories, but some other categories (such as online word processing) have very low adoption so far.

--College students are more enthusiastic adopters of web apps than non-students. More than 50% of college students use at least one web app regularly.

To me, the study was a good reminder of the practicality of most PC users. Although we in the industry worry a lot about the technical distinctions between things like web apps and packaged applications, most users don't care. They just want to solve their problems and get on with their lives. If a web app is better or cheaper than a packaged app, they will use it. If it isn't better in some way, they won't.

If you're working at a web app company and want to create a popular service, be sure you solve a real world problem that people care about. The doors are wide open if you do that.

If you work at a traditional software company and think you're immune to competition from web apps, or that it'll take years for them to affect you, you're living in fantasyland. For about 70% of US PC owners, there are no significant barriers to adoption of web apps.

There's a lot more analysis (and graphs of the findings) in the full report on the Rubicon website. Check it out here.

And there's some interesting commentary about the study here and here and here and here.

dimanche 9 septembre 2007

The war between Nokia and Apple

"When two elephants fight, the loser is the jungle." --Ancient proverb

And so it begins.

The Apple-Nokia war finally got underway on August 29, when Nokia announced an array of new music-capable phones and an online music store. The two companies had been eyeing one-another like wrestlers outside the ring for more than a year. Apple entered the mobile phone market, but only in the US, where Nokia is a non-factor. Nokia openly declared that it's a computing company (link), but its non-phone products so far have been different flavors of lame.

But the August 29 announcements put Nokia and Apple on a path to direct confrontation. I haven't seen a lot written online about the importance of this conflict. I think that's probably because many of the people who follow Apple's business closely are based in the US and have trouble taking Nokia seriously because it's a secondary player here. Meanwhile, Nokia's most ardent followers are in Europe, and look at Nokia's actions in light of its regional conflicts with SonyEricsson and the European mobile operators.

But when you stand back and look at what's happening in the industry worldwide, it's clear that Apple and Nokia both want very badly to be the dominant mobile computing company for young adults. That makes a huge, relentless conflict between them inevitable. They're like two armies trying to take the same hill. One's coming from the west, the other from the east, so there's not a lot of fighting at the moment. But as soon as they reach the hill, there's going to be an explosion.

I don't know who will win, but I'm pretty sure that the main losers will be all of the other device companies and mobile operators who happen to be hanging around on the hill.

My advice to them: Run.


What Nokia announced, and why it matters

On the 29th, Nokia announced four phones, two new data services for its phones, and a new brand. Let's start with the services.

The Nokia Music Store is just what the name says, an online music store run by Nokia. It'll be accessible by both PC and selected Nokia phones. The N81 and N95 will be able to talk to the store directly, while for a number of other Nokia phones you'll be able to buy music on your PC and sync it to your phone (Nokia calls this process "sideloading").

Nokia will offer more purchase options than iTunes does. You can either buy and download individual titles (for one euro a song, a euro cent above iTunes), or you can subscribe to the store and stream all the music you want to your PC (but not save it) for ten euros a month.

Nokia positions the streaming service as a way to discover new tunes, after which you're supposed to buy and download the ones you want to keep. I can understand the practical reasons for not streaming from the store directly to phones -- there would be issues with data charges, network capacity, latency, and so on. But I don't know how users will feel about that. If I had a streaming account on my PC, I think I'd expect to have the same service on my Nokia phone. And why wouldn't you want to discover new music while you're on the go?

The bigger problem is that the 120 euros you pay a year for a streaming service is 120 songs you could have bought and kept forever. That's one new song every three days. For comparison, the average iTunes user buys three songs a month. A music subscription service is a great way to get access to a lot of music quickly, but unless you want a colossally large music collection, it's a huge financial drain in the long run (I wrote more on the economics of it here). No wonder the music industry loves the idea of subscriptions (link).

The re- rebirth of nGage. The other new service Nokia announced was a mobile game store. You'll be able to try games for free on your Nokia mobile or PC, and then after purchase you can use them on the PC or sync them to your phone (curiously, Nokia calls this process "installation.") Nokia also promises multiplayer and community features.

Price per game will be six to ten euros, and Nokia says you'll be able to pay by credit card or through your phone bill if the operator enables that. No word on what the revenue split is.

The service sounds pretty interesting to me. The most confusing thing about it is the name. The nGage service won't work with all of Nokia's N-series phones. I know there's no official tie between N-series and nGage (the names were apparently chosen separately), but try explaining that to a typical customer in a store. Nokia has struggled and failed for years to explain to customers the S60 platform that it uses in a lot of its phones; picture adding yet another layer of confusion on top of that (link).

I think the other important challenge to nGage is flash. There's a huge supply of free flash-based games on the web, and a lot of them are the sort of quick-reward, easy to use games that seem to do well on mobile devices. The biggest barrier to using them on mobiles is that Adobe charges for the mobile flash player, and so relatively few mobile phones have it installed. A small installed base of phones means that most developers don't target mobile flash. If Adobe ever drops the charge for the flash player, or if a free flash-equivalent comes along (perhaps a mobile version of Microsoft Silverlight), it might become very difficult to convince people to pay for nGage games.

I know nGage provides a higher-quality gaming experience than flash, but I'm not sure most mobile users will care enough to pay.

Ovi is a new brand that Nokia will use as a wrapper for all of its mobile services, including games, music, maps, photo sharing, and presumably more to come (link). I guess that makes sense from a convenience standpoint -- there will be one website (ovi.com) where you can go to discover all of the Nokia services (Nokia employees say that it will also be a gateway to the services of other companies as well ). Unfortunately, Ovi apparently won't work as a compatibility mark: the phones that can use one Ovi service can't necessarily use another. For example, many of the phones that can run nGage games can't directly connect to the music service. A brand is most effective when it represents a coherent idea or consistent product. I think Ovi creates an expectation of coherence but doesn't deliver it. It just says that Nokia's in the service business, which Nokia cares about but is not something that concerns users

If Nokia doesn't make all the Ovi services work on all its data-capable phones quickly, I think the varied incompatibilities between the Nokia services and devices are going to be a nightmare to explain at retail.

The four new phones
The N95 8GB adds more memory to Nokia's flagship Swiss army knife phone, which includes a 5 mp camera, improved 3G, WiFi, and GPS. This is the one that online reviewers always compare to the iPhone. It works with both nGage and the music store, and its base price is 580 euros before subsidy.
The N81 is a slider phone with WiFi and 3G, and has dedicated buttons to access both nGage and the music store. It'll sell for 430 euros pre-subsidy.
The 5310 is a slimline candybar phone that can play music synced from the Nokia music store. It cannot access the music store directly. It has dedicated music controls next to the screen, and its base price is 225 euros.
The 5610 is similar to the 5310, but adds a slider and built-in camera. Its base price is 300 euros. A lot of online reviewers have been comparing this and the 5310 to the SonyEricsson Walkman phones, and I think that was probably Nokia's thinking. But hold that thought because it's not necessarily how things will work out.

What's the impact? A huge amount depends on execution. How well will Nokia's new services integrate with the phones? How easy will it be to play songs and games? How many titles will be in the Nokia stores, and how good will they be? Services and mobile devices often live or die on the little details of usability, and we can't judge that for Nokia yet because we can't play with the new products and services.

But Nokia's direction is very clear. It wants to be in the mobile Internet services business, as both a developer and publisher of content and services. It's going to tie those services directly to its phones. And knowing Nokia, it'll keep iterating on both the phones and the services until it gets them right.

That's why Apple and Nokia are now at war. Even if Nokia's current products turn out to be lame, it's going straight into the territory that Apple has been pursuing ever since the first iPod shipped.

Apple's new products. I should add a little context on Apple's recent product announcements. In September, Apple made a lot of changes to the iTunes and iPod lineup. The move that got the most attention was the price cut of the iPhone from $599 to $399. I'll write more about that below. The other changes that stood out to me were:
--iTunes can now be accessed via WiFi on the iPhone and iPod Touch. This corrects a glaring weakness in the original iPhone. It's interesting that Apple apparently hasn't enabled the iPhone to talk to the store over a cellular connection. That may be because the network the iPhone uses in the US is too slow to easily download music, or it may be that AT&T doesn't want a lot of data traffic going over its network when the phone's data plan is flat-rate.
--The video version of the Nano, starting at $199, is a heck of a lot of technology in a very cute little package.
--The iPod Touch is basically an iPhone without the microphone and cellular radio. It makes a really interesting PDA for people who want to buy a basic voice phone and carry their entertainment separately. It's priced at $299.

(As an aside, I have a request: Once the iPod Touch starts selling like gangbusters, would someone please go find the person at Sony who decided the Clie handheld business was a dead end, and kick them in the shins?)


Relative strengths of the competitors

Or, how to piss off both Apple fans and Nokia fans in the same post.

Apple and Nokia are very different companies. Here are their relative strengths:



Resources. No contest. Although Apple is a very successful company, Nokia has vastly more financial resources.

Logistics. Nokia is one of the greatest logistics companies on the planet. It churns out hundreds of millions of phones, changes models frequently, and almost everything works properly. If Nokia were running the US Federal Emergency Management Agency, New Orleans would be 20 feet above sea level by now. Apple, by contrast, does a very competent job of managing contract manufacturers in Asia. Advantage Nokia.

Telephony experience. Another huge Nokia advantage. Designing phones and getting them qualified on networks is really tricky, and Nokia knows how to do it better than anyone else.

System design skill. This is Apple's core competence; it knows how to design hardware and software together to create a beautifully integrated system. Nokia's phones often appear as if their hardware and software were designed by completely different groups and slapped together at the last minute (because, in many cases, that's exactly what happened). This works great in commodity phones, but if the competition is for who can create the most elegant data experience, Nokia is at a huge disadvantage.

Brand power. Wow, this is a tough one. Apple has one of the coolest brands on the planet. Nokia's brand is beloved in Europe, and in most of the world it personifies upward mobility (except in the US and Japan). I call this one a tie.

User interface. Apple knows how to design these. The kindest thing you can say about Nokia's interface designs is that they're better than many other phone manufacturers. But that's like comparing a three-legged dog to a two-legged dog. Nokia's trying to get better -- at the announcement event, it showed video of a forthcoming device with an iPhone-style touchscreen (link). But for now, this one's clearly a strong Apple advantage.

Cleverness. Hey, it's Steve. Nokia's management is extremely smart, but you look to them for great operational execution, not brilliant strategy. After all, this is the company that brought us the original nGage.

Industrial design. I'm going to get flamed by the Nokia fans for this, but Apple has a clear advantage in design. The comparison: Nokia sometimes creates a great design. Apple rarely creates anything less than a great design.

Music solution. You'd think this would be an overwhelming advantage for Apple, but its arrogant handling of the music companies has made them even more desperate to tear Steve Jobs' throat out. They're anxious to work with someone like Nokia. Apple still has an advantage, but it has opened the door to competitors more than it had to.

Breadth. Nokia can fight on more fronts, and might be able to outflank Apple. For instance, Nokia's revived nGage game service gives it a second interesting offering for young people, whereas Apple is limited to just music and video. This is why I think Apple's decision not to open the iPhone to third party app developers is a huge mistake. If Apple had the help of third party developers, it could more easily fill out its software portfolio.


How they'll fight

Nokia wants a war of attrition. It will try to force Apple to compete on more fronts than it can afford to cover. I think we should expect to see a broad array of services added to Ovi quickly, aimed at enticing young adults in all sorts of different ways. Nokia will probably also launch a blizzard of media and entertainment phones with varied features, in the hope that a couple of them will hit sweet spots in the market.

Apple's game is to keep Nokia off balance and grab the most important opportunities. Think of a fencing expert: dodge, feint, and then stab the other guy in the heart. Apple currently has a product advantage -- its music service is already working. So it will try to capture as many customers as it can before Nokia gets its act together.

Apple can also use Nokia's size against it. Nokia has a huge product line and has to position each product carefully within it. Apple has only one phone, so it doesn't have much to protect. That's where the iPhone price cut comes in. The iPhone had been positioned against the n95, at the top of Nokia's product line. With the price cut, the iPhone is now looks much closer to the middle of Nokia's line, the phones that were supposed to be aimed at SonyEricsson.* Nokia can't slash the pricing of the n95 without screwing up the prices of its entire line, so with one price action Apple accomplished two things -- it can reach a lot more customers, and it forced Nokia to go back and rethink its competitiveness.

We should expect more surprise moves from Apple. It's more important for them to keep Nokia off balance than it is to please every customer. I think that's why Apple was willing to piss off the iPhone loyalists with a sudden, large price cut.

*Because of varying subsidies, it's hard to tell what the actual street price comparison between the new n95 and iPhone will be. The current n95 sometimes gets subsidized down by several hundred dollars if you buy a multiyear service contract. Maybe the new n95 will be subsidized down below iPhone prices. Maybe the iPhone will be subsidized too. Or maybe now that Nokia's offering its own services the operators will refuse to keep subsidizing the n95. We need to wait until the iPhone and Nokia's new services premiere in Europe this fall.


Impacts of the war: Alas, the innocent bystanders

The common denominator between Apple and Nokia is the imperative to move quickly. Nokia wants to broaden the competition fast, Apple wants to keep surprising Nokia with new features, products, and other changes. That's going to accelerate the pace of change in the mobile industry. And the accelerating pace of change, rather than anything in particular that Apple or Nokia have done today, is the biggest challenge to the rest of the industry. The other players have been struggling to keep up with the current rate of change; what will they do when Apple and Nokia step on the gas?

I've seen these situations before. You think you're just about keeping up with a competitor, and suddenly they disappear in a cloud of dust. I believe that's about to happen in mobile phones.

A shift from hardware design to systems design. Let's look at which companies have been most successful in smartphones: RIM creates e-mail phone systems that combine hardware, software, and services. DoCoMo and the other Japanese operators drive systems designs that combine hardware, software, and services. The iPhone does the same. Previously, those competitors were confined to particular countries or relatively small vertical markets, but now the world's biggest phone company is trying to do the same thing. That raises the competitive bar for everyone else in the industry.

What are companies like Samsung and Motorola supposed to do? They don't know how to create their own services, let alone integrate one well with a phone. In the music market, there are a lot of third party services out there, but none of them have been effective so far at challenging iTunes. I think they're not strong enough to change the competitive situation. Same thing for the operator services.

So the music phone market looks ugly. What's worse, if Nokia and the systems companies extend their new design approach to other data markets, the traditional mobile phone companies might be cut out of most of the big growth opportunities. They need to learn a new set of skills instantly, and they're far behind the curve.

The interesting potential exception to this situation is SonyEricsson, the leading vendor of music-enabled phones in Europe. Their hardware's nice, and they have a clean user interface that looks inspired by the iPod. Because I'm in the US, I don't have a good read on how smoothly the SonyEricsson phones integrate with operator and third party music stores. Is the experience as easy as using iTunes?

The Register says that Omnifone's Music Station is a promising possibility (link), but it's a subscription service costing 3 euros ($4.11) per week. For that same price you could buy 216 songs on iTunes per year, and at the end of the year you'd actually own something.

I really have trouble seeing the long-term economic benefit of a music subscription service for a user. If you subscribe to one, please post a comment and educate me.

SonyEricsson's management hinted to Time Magazine that it may create its own music service (link). If so, it had better hurry up. I have a lot of respect for SonyEricsson's hardware designs, but if it's limited to music stores with weird business models and ones that don't integrate seamlessly with its phones, it's going to have a very hard time outcompeting an accelerating Apple and a Nokia that's learning to integrate solutions.

Microsoft: Reverse course, again. This is the situation in which Microsoft could have stepped in to offer a music service to the phone companies challenged by Nokia. But in an exquisitely ironic move, Microsoft basically shot its licensed music store initiative last year in order to support the proprietary Zune. Now it can't step up to the opportunity.

Oops.

Microsoft is probably too late to recover in music, but as Nokia adds new services there should be a lot of opportunities to license equivalents of them to Nokia's competitors. Microsoft should focus less on selling its own OS, which scares the phone companies, and more on delivering services they can build into their phones.

And oh by the way, it's time to bury Zune. The iPod Touch just lapped it. If Microsoft wants to lose money on proprietary hardware, it should focus on Xbox. At least there it's buying market share for its money.

The operators lose control. They were struggling to establish their own services suites back when things were moving slowly. Now that Apple and Nokia are shifting into high gear, I don't see how the operators can keep up.

You can find very different scenarios online for where this will lead. Andrew at the Register predicts that the operators may strangle Ovi by refusing to sell any phones that support it (link). He has a good quote from someone who knows both Nokia and the operators:

The operators own the relationship with the customer. They're not going to allow Nokia to own it.

On the other hand, Richard Windsor, the excellent telecom analyst working for Nomura Securities in London, said in an e-mail brief that the operators are doomed:

Through their inaction, mobile operators have squandered the opportunity to be the service integrator for mobile and are left with the prospect of offering nothing to users except commodity data packets.

Who will be right? It depends on Nokia's ability to generate user demand for its services. If the users want the services, the operators will have to go along with it. I assume Nokia understands this and is prepared to do a big marketing push. Unlike Nokia's previous efforts to set up content portals, this time it has to succeed or it surrenders the future to Apple. So the conflict with Apple also locks Nokia into a war with the operators.

Isn't this fun?

If I were running a mobile operator, I'd stop trying to create my own services bundle, and focus on enabling as many Internet companies as possible to deliver services on my network, in exchange for a small cut of their revenue. An operator with the innovation of the open Internet behind it might be able to keep up with Nokia and Apple. But an operator working alone will be very lonely indeed.

What does it mean for users? You'd think that all this new competition would be good for users, and in many ways I'm sure it will be. But Apple and Nokia are both showing a disturbing tendency to keep everything proprietary. The iPhone is not open to third party developers, and at this point Ovi appears to be about marketing Nokia services, not opening up the richness of the Internet. (To be fair, Nokia employees say that will change, but I'm not sure if they mean that they'll offer access to any Internet service, or just to some selected ones that they cut a deal with. I suspect it'll be the latter.)

Welcome our new Apple and Nokia overlords. There's a disturbing possibility that we may end up exchanging one set of walled gardens for another. They'll be lavish, beautiful gardens, far better than the operators' truck farms for data. But we may not get the open data marketplaces that a lot of people have been hoping for.

If you want to read other perspectives on Nokia vs. Apple, check these out:
-A confident view from Finland (link)

-A cautious view from Jupiter Research (link)

-An outstanding article by Mark Halper at Time, with quotes from Nokia and SonyEricsson (link).