I, Cringely . The Pulpit | PBS
I, Cringely is the blog of Robert X. Cringely. Copyright 2006 PBS Online.
Wimpy
Every few years I actually make a television show for PBS and one of those rare occurrences is coming this month with "The Transformation Age: Surviving a Technology Revolution with Robert X. Cringely." Because of PBS scheduling anarchy you'll have to check your local listings to see when the show is on. It is about the obvious realization that as Moore's Law changes technology, technology in turn changes society in ways that are not always predictable. We look into the past and then into the future and put things in a perspective that a general audience can understand. AND it's probably the only place you'll see a Carly Fiorina interview. If you catch the show, please let me know what you think of it.
This week readers have been asking for my perspective on a number of news events, so I think I'll take this space to cover a number of topics, though not in my usual depth.
Several readers are concerned about Microsoft's decision to stop selling Windows XP and -- most importantly -- end security updates for the venerable operating system. This has everything to do with business and nothing at all to do with technology. Wearing my business reporter's fedora, then, I'll point you back a week or so to Microsoft's most recent earnings announcement, which disappointed Wall Street. This is significant because it is hard to find a Wall Street analyst who remembers the last time Microsoft's earnings were disappointing. It simply doesn't happen. That's because Microsoft has a myriad of tools for adjusting the numbers to look just right.
Because Microsoft has so many tools for fine-tuning its financials (primarily the management of expenses, by the way -- Microsoft makes so much money that it tunes the numbers by throwing cash away), the fact that this last set of numbers disappointed suggests to me that they, too, could have been avoided. Microsoft probably decided to deliberately take an earnings hit precisely so they could play the "we have to get the earnings up" card to justify the final death of XP.
Microsoft has been under huge pressure from its hardware OEMs to dump XP, thus forcing millions of customers who have been avoiding Vista and Vista's inevitable hardware upgrade to finally buy new computers. Dumping XP will help Dell and HP AND Microsoft, big-time. It won't do anything for you or me, though, since Vista still sucks, but we obviously don't matter.
Those customers who think they'll keep XP going on their own will probably be out of luck, too. With Microsoft abandoning security upgrades, hackers will eat holes in the old OS practically overnight. And if one or more of the security companies like Symantec or McAfee think they can make a business out of defending XP, I simply doubt that customers will pay.
Another reader asked about this week's big WiMax announcement in which Sprint and Clearwire will merge their WiMax assets with $3.2 billion in support from Intel, Google, and others. The reader figured that this would provide a viable third broadband competitor for DSL and cable and this one would also support mobile operations, which is why Comcast and Time-Warner Cable have money in it. Is this a death knell for telcos or what?
My vote is for what because it certainly isn't a death knell for DSL by any means.
We've gone over these numbers before in previous columns, but the fact is that WiMax is not as good as it is supposed to be. Those 30-mile-diameter WiMax cells we read about are a joke. While a typical WiFi hotspot covers about an acre, a good WiMax hotspot or cell will cover about a square mile. That's 640 times bigger, but far from the 10 to 30 miles promised in the marketing materials.
The ideal size for a WiMax cell is a compromise between user demand and backhaul economics. You want to serve as many users as possible but not so many that you can't economically provision adequate Internet bandwidth per user. If WiMax really could support those 30-mile cells it would be great, because then all that would be required was to drop a cell at every backbone point-of-presence, directly tapping a gigabit fiber. But since real WiMax cells are smaller this means installing backhaul circuits -- mainly DS3's (45 megabits per second) -- which in today's world takes us back to that one square mile.
Rather than a masterstroke, this merger of Sprint and Clearwire assets is more an act of desperation. Neither company was going to make it on their own. Sprint very nearly sold out to Comcast (not just the WiMax bits but everything) but the Comcast offer was realistic, not generous. Adding in the Intel and Google money made it marginally smarter to try for the combined WiMax network, instead. Intel wants to sell WiMax chipsets and offer WiMax integration that AMD cannot while Google just wants to keep the big broadband ISPs reeling. The two cable companies that are investing want to leverage the much larger investment of their partners to gain a viable mobile network, mainly for Voice-over-IP phone service.
This doesn't mean WiMax will be a failure, by the way, but just one of several mainly mobile data options in the market.
For a final data point in this WiMax story, look at this week's announcement from Cablevision about their planned WiFi build-out in the footprint of their existing cable TV network in New York, Connecticut, and New Jersey. Cablevision has no licensing problems, no backhaul issues (they'll use their cable network), no site problems (they'll use their cables or utility poles -- space they've already paid for), and no sticky business model (the WiFi network will be free for Cablevision TV subscribers). This is SO much simpler than most WiFi or WiMax build-outs. Yet if you dig through the story you'll see the wireless network will take two years to build at a cost of $350 million just for the New York City metro area. So that $3.2 billion Sprint and Clearwire are getting isn't very much money after all.
The other big story this week that readers have been asking about is, of course, Yahoo and Microsoft. Taking my usual lateral view of things I find myself wondering why the people of Yahoo -- not just CEO Jerry Yang, but pretty much EVERY Yahooligan I have spoken to -- is so afraid of working for Microsoft? For Jerry, who -- oddly for a computer scientist -- has always seemed to be guided more by his gut than his intellect, it is mainly a matter of ego. He'll be a billionaire either way. But the people I know who work at Yahoo are simply afraid of working for Microsoft, as though Ballmer and Gates eat their young.
This isn't so much a Yahoo versus Microsoft perception, by the way, as a Yahoo versus MSN. Compared to Yahoo, where life has been cushy for a LONG time, MSN IS a pretty Spartan place. More importantly, at MSN there is a culture of confrontation. Where at Yahoo people with bad ideas or bad attitudes are generally isolated, sometimes at great expense to the company, at MSN those people are fired and thrown out of the building. Maybe in Yahoo's general feeling of inadequacy compared to Google, the geeks figure they couldn't survive at Microsoft, hence the whole Jonestown ambiance we sense around these recent events.
What's ironic is that Microsoft actually WANTS some Yahoo DNA, but the Yahooniks have been brainwashed not to believe it. As I have written before, Microsoft knows it has to change its ways to succeed in a new world without Bill and Steve, so becoming somewhat un-Microsoft-like is a good idea, but that can't be led from within.
Microsoft still needs Internet market share, however, so they may come back for another try at Yahoo, but it is more likely they'll try the same hostile approach to Facebook. Hostile because Zuckerberg won't want to be acquired any more than Yang did. But in the case of Facebook Microsoft will probably succeed. And Yahoo will ultimately let Google handle both search and ads because Google will richly reward Yahoo for doing so and because it will allow Yang and Filo to return to the content business they so enjoyed in their heady days of early success in the 1990s.
Yahoo will never dominate the way Microsoft or Google have, but as a going business, the best days of Yahoo probably still lie ahead.
Don't forget to watch my show.
May 09 2008
Iron Man
There was a game we used to play in the office, years ago, casting a movie of our own lives. What well-known actor or actress would play you? Who would play your friends? The game eventually faded, as games always do, but at the time it was great fun. So let's try it again: who would you cast to play Steve Jobs of Apple? Certainly not Noah Wyle, the only actor to actually play the Apple CEO. I've always thought there were elements of Jack Nicholson in Jobs, but Nicholson is too old for the role. But now it is clear the role should go to Robert Downey Jr. based on his turn this week as the sardonic reformed arms merchant turned Iron Man. Maybe Downey is a little too nice to play Jobs but otherwise it fits, especially in the elaborate planning and preparations that we see coming clear at Apple. Like Iron Man, Jobs is up to something, something big.
There are very few CEOs in high tech who have been at their jobs longer than Steve Jobs. While Jobs founded Apple with Steve Wozniak and Mike Markkula back in 1977, remember he was cast out by John Sculley in 1985 and didn't return until Apple bought NeXT in 1997. Still 11 years is a long time in the top job. Bill Gates didn't last that long as CEO of Microsoft, taking over from Jon Shirley in 1990 and handing the reins to Steve Ballmer in 2000. Among the big companies only Michael Dell has been at it longer than Jobs altogether and Dell is back in his hot seat only reluctantly, returning in an attempt to bring his company back to its number one market position. Once things are fixed at Dell, if they can be, Michael will be gone again, while Jobs seems in his element and determined to stay for as long as possible.
And why not? He has taken the company from also-ran to market leadership based on quality design, not just the best price. Jobs made Porsche his archetype and has built Apple in that car company's image, selling entertainment, which always sells for more than sheer calculating ability. Apple is a lean and mean profit machine that is, more than any of its traditional rivals, poised to dominate the emerging markets for Internet-distributed entertainment and mobile devices. Industry pundits are always watching for the next new thing Jobs and Apple will come up with.
But we rarely watch what Apple is getting rid of, mainly because that doesn't happen very often. Sure, old hardware platforms are dropped, sometimes for lack of sales, but it is hard to even remember when Apple dropped or sold off any of its software businesses. Even FileMaker was dragged back inside the company by Jobs after Sculley's abortive attempt to spin off the database company.
So why, then, was Apple quietly shopping around its entire professional application business to prospective buyers at the recently completed National Association of Broadcasters show in Las Vegas? These include Aperture, Final Cut Pro, Logic, and Shake -- applications that are hardly also-rans in their segments and none of which are antiquated in the least. Final Cut, of course, absolutely dominates the video editing business. Why would Apple want to give that up?
Why indeed?
Apple's professional applications have never directly made a lot of money for the company. Rather, they were always intended to drive hardware sales in the areas of image editing, layout, and audio and video editing where PowerMacs were the dominant machines ever since the demise of Amiga. While Final Cut Pro probably makes a lot of money for Apple, the other professional apps probably just break even. Still, is that reason enough to sell them off?
Maybe, but I don't think so.
Taking a look at Apple's recent success selling Macs (up 51 percent since last year in a PC market that is otherwise fairly flat), your traditional Wall Street analyst would see that Apple is, for the first time in decades, building a broad market position, not just one based primarily on the graphics and video markets. Apple's recent hardware successes have come at the expense of Dell and HP. If that's the case, then the typical Wall Street drone would say, "Why not kill the professional apps, since they seem to no longer even be necessary for Apple's success?"
In Wall Street's quarter-to-quarter perspective, selling off Apple's professional applications makes perfect sense. Except that Steve Jobs tends not to think quarter-to-quarter so much as decade-to-decade. This is a guy with a LONG horizon, which is why he appears, frankly, to be the only one of his peers with either a plan or a clue. As Jobs did with the iPod and iTunes and now with the iPhone, he is setting the standard and most Apple competitors are mainly waiting and reacting, which is hardly a way to lead anything.
Apple has plenty of cash on hand (more than $19 billion) so they wouldn't be offering the professional apps to raise money. Nor, given the recent improvements in Aperture, for example, does it appear that Apple has at all allowed the space to languish. Only in Apple's refusal to date to embrace Blu-ray media is it holding up the pace of development in this category. More on this later.
There are plenty of potential buyers for Apple's professional apps. As the former leader in video editing Avid would love to own Final Cut, for example, if only to kill it. Sony's Vegas editing package is hardly competitive, so that company might well want all the apps to shore up its own hardware sales, not just in computers but also broadcast equipment. So too Panasonic or any of a number of other Japanese companies that might want to add software expertise to their media hardware businesses. That's why Apple was shopping the programs at NAB.
So what's really happening here? Well clues have been accumulating for months and I have already written about some of them. Apple's decision to not yet ship systems with Blu-ray drives or even support third-party or external Blu-ray drives in its professional applications has caused consternation in the $4 billion event video industry where most copies of Final Cut Pro are actually used (Hollywood is the niche market here, while weddings dominate). This has hurt Mac sales and Final Cut sales, and since Steve Jobs isn't stupid it is probably deliberate. Apple wants to slow the success of Blu-ray, probably in hopes that downloads -- especially downloads via iTunes -- become the de facto method for delivering HD content. Still, we haven't yet seen iTunes offer wedding videos, have we? There must be another shoe to fall.
To my knowledge we haven't yet seen Apple include that H.264 video encoder/decoder chip that I have written Apple is committed to using across its entire Mac/iPod/iPhone line. Could they be inside the new iMacs that were just quietly launched? That would be interesting.
It seems obvious to me, however, that there is only one real reason why Apple would sell off its professional applications and that's to avoid antitrust problems when/if Apple buys Adobe Systems as I predicted at the beginning of the year. Final Cut Pro competes directly with Adobe Premiere. While in my opinion the Apple video software is clearly better, Jobs couldn't be at NAB trying to sell Premiere -- software he doesn't yet own. Maybe there's a planned bait-and-switch, seeing who is interested in Final Cut then trying to shift them to Premiere.
The major point here is that Adobe is in play, or at least Apple thinks so. The company has plenty of cash and stock to do the deal and plenty of incentive, too. Apple's goal in acquiring Adobe would be to control first Flash and second Adobe's emerging Air application platform. Adobe announced this week a broad industry initiative to extend Flash to mobile devices, but Apple wasn't a participant. Why bother if you intend to shortly own Flash outright?
Owning Flash and merging it with QuickTime would give Apple near-total dominance of Internet video, furthering the advantages of iTunes and shoring up in the process the iPod franchise. They'd be giving up a sports car in Final Cut Pro, but end up effectively owning the road instead.
May 02 2008
Apple to the Core
Apple this week bought a fabless chip company called PA Semiconductor and pundits far and wide are trying to explain the deal with broadly varying ideas, some of which are close but none seem to really understand what the deal is about. In the short term this acquisition means precisely nothing to Apple users. In the long term it could be quite significant, however, and gives a number of tantalizing hints about Apple's hardware strategy.
Why would Apple, having already jumped from PowerPC to Intel, spend $278 million to buy a company that is best known for designing PowerPC chips? Are they preparing to dump Intel? No. Does it have anything to do with Intel? Yes.
This deal has Steve Jobs' fingerprints all over it. His first formal position at Apple was as head of purchasing and Jobs was known for pushing suppliers to ever lower component prices. He still brings to his work a purchasing manager's perspective and a desire to beat up suppliers whenever possible. So in that sense this acquisition is all about Intel. And the purchase price, which probably appeared to have been pulled right out of the air by Jobs, who then wouldn't budge from the figure, is really based on Apple's target savings over the next two years after forcing Intel to cut prices based on fear of a possible Apple switch back to PowerPC.
"We got it for free!" I'm sure someone at Apple said after factoring in the expected Intel price cuts. There is nothing that makes Jobs happier than forcing one supplier to effectively finance its own demise. It's that Devil thing again.
Whether PA Semi cost $1 or $278 million, Apple still has to DO something with the company and its technology and there has been some speculation that we're looking at the next iPhone chip, or perhaps the one after. That is very unlikely. PA Semi has aimed at workstation and server and high-power embedded chips that use far too much power for any iPhone. And while many pundits argue (and PA Semi even told some of its customers) that Apple was mainly acquiring intellectual property (IP), companies aren't typically bought that way these days. They are purchased for what they have already completed, not for what they might do in the future. There's a PA chip that Apple wants very badly but it won't go in an iPhone.
The fact that PA Semi told its customer that the purchase was about IP is meaningless. How could they know the motivation of this purchaser, especially THIS purchaser?
Of course that doesn't mean Apple couldn't switch to PA silicon for the iPhone over time. Once Apple has in-house this considerable design capability there is no limit to the good it could do on all platforms. But it is very unlikely -- almost impossible -- that this acquisition was based with the iPhone in mind.
Then why did Apple do it?
In the short term, it was to scare Intel into lowering prices by at least $278 million over two years. And in the long term it was to create a replacement for Intel as the prime CPU for Macintosh computers.
Here's the important part: CPU architectural advances are achieving minimal returns these days. It is all about multiple cores and clock rates, nothing else. This means that Intel chips are a commodity, and have become effectively interchangeable with those of AMD. I'm sure partisans on both sides would disagree, but my statement is still true. Except at the very top end of each product line, you can always find an equivalent Intel or AMD chip through balancing numbers of cores and clock rates. All that really varies is the price and that does darned little.
This commoditization means that what keeps Apple buying from Intel and Intel alone is only one thing -- money. Through whatever combination of discounts, non-recurring engineering, co-marketing funds, whatever, Intel is cheaper for Apple than would be AMD at this time. And as the only big all-Intel PC shop any more, now that Dell has succumbed, Apple has special value to Intel -- value worth $238+ million to retain.
But Apple having value for Intel doesn't at all mean that Intel has value for Apple. When it came to jumping from the PowerPC a few years ago, Apple had incentives on all sides. IBM was incapable of shipping PowerPC chips that would run reliably at higher clock speeds while Intel was already approaching 3 GHz. Intel was offering to throw money at Apple while IBM was distracted by manufacturing the PS3's Cell processor, based on PowerPC hardware and built in the same fab. Intel was offering higher performance at lower prices, so Apple made the jump. It was price and clock and nothing else and that's key, because Intel would like us to believe the X86 architecture played a role, too, which it didn't.
Apple is not in the least tied to the Industry Standard Architecture (ISA). Oh it worked out well and has helped Apple sell computers into Windows shops because of Boot Camp and the ability to run Windows as well as any desktop from Dell or HP, but this advantage is fading fast with the increasing popularity of virtualization.
Where Windows now runs better on an ISA (X86) chip, because that's what Windows was designed for, we are rapidly approaching the point where desktop virtualization will allow us to throw multiple cores at the problem, removing forever the X86 advantage, even for Windows.
The scenery is even more compelling looking from the other direction. Where X86 offers no true advantages for running OS X, it is easy to see that it could offer DISADVANTAGES, simply because OS X, as a Unix variant, was never designed specifically for X86, making a lot of Intel hardware simply unnecessary. If there are instructions that will never be used, why spend the silicon real estate to hard code them? CPUs optimized for OS X would be smaller, cheaper, and use less power than any Intel or AMD alternative simply because they could be simpler overall.
Which brings us back to PA Semi. In a world of multiple cores and high clock rates, PA Semi can produce a family of processors to drive everything from the Apple TV to the most powerful Xserve. Because they are not X86 compatible, these chips will run OS X faster on a per-watt basis, which is key for a computing world going largely mobile. Because they'll be Apple designs built on a competitive basis by almost any of the world's fabs, these processors will be cheaper MIPS-for-MIPS than anything Apple could buy from Intel or AMD, which Apple will convert into a profit-margin advantage, not lower system prices. If Windows performance suffers, that can be handled by adding more cores, but most users won't even notice.
Heck, by that time Windows will probably be virtualized anyway (what Microsoft should have spent five years and $5 billion on instead of Vista).
Apple is not tied to Intel or to X86. Jobs said they had OS X running on Intel for two years before announcing the shift, so it is logical to assume they have recompiled the OS to run on almost every competitive processor available today. OS X on the PS3? I'm sure it is running in an Apple lab.
Apple has changed processor families twice before in the Macintosh era so it is more likely, not less, that they will change again. It's even possible we'll see a jump to AMD for some machines before the final days of Apple/Intel. But just as the Intel changeover took a year and was predicted to take two, we're 3-4 years out on this transition. Your next Mac will probably have an Intel CPU, but the one after will be all Apple, through and through.
Apr 25 2008
The Truth About IT Consultants
These days everyone in IT is a consultant, employs a consultant, or both. I'm a consultant, aren't you? Outsourcing, offshoring, LEAN management, a lousy economy, and covering one's IT butt have led organizations of every type and at every level to look outside for answers to their IT questions and often even to ask those questions in the first place. This has led to the greatest disconnect I have seen between job requirements and apparent internal capability in the 30 years I've been around IT. It's scary. Hardly any organization can get by without using consultants and -- here's the bad news -- most consultants aren't very good. So here is my advice on how to select and use an IT consultant followed by a grim list of the 10 most common lies told by bad consultants.
What led me to write this column were the troubles of a local company here in Charleston -- American LaFrance, the storied maker of fire engines. American LaFrance was last year spun off from Freightliner, the big truck manufacturer, which agreed to maintain the company's computer systems for a few months while the new American LaFrance bought its own systems with the help of a big IT consultant that rhymes with I-B-M. At the time of the cutover the project was months late and millions over budget. The company suddenly had no idea where it stood in any part of its business and today is in bankruptcy likely as a result. The company is close to failure probably because a consultant didn't perform as it promised. The consultant didn't perform as it promised most likely because there was no way to do so and still make money on the contract, which was underbid.
Who does YOUR IT consultant really work for?
So here's my guide to the various types of consultants, what to look for, and how to get the most good and the least bad for your money.
There are generally three types of IT consultants, which I'll simply label A, B, and C.
Type A consultants are hired to do a specific thing -- set up an email system, design and install a network, put in a POS system, etc. Usually the customer knows what they want before they find a Type A consultant to hire.
Sometimes a customer does not know what they want. These customers start with a Type B consultant who is supposed to help them think out of THEIR box, develop an improved business or IT vision, etc. In the early days when finding ways to improve things was easier, good consultants came to a new customer armed with benchmark data. They could look at a company's various departments and give some good guidance on what areas needed work. They'd tell a customer they were spending too much or not enough on xyz. One of the biggest roles of this type of consultant was to help sell the eventual plan to upper management and secure funding.
These days it is doubtful that most Type B consultants can provide any good ideas. They are mostly expert at being salespeople. The solutions they offer are often what their firms have to sell -- not necessarily what the customer actually needs. This can get exciting when it comes time to implement the project, as Type B consultants tend to be very poor project managers. They don't fully understand the technology they are selling so overruns are common.
There is another class of consultants that are mostly project managers, which we'll call Type C. These folks are brought in as contractors to help implement a given project. The good ones are like Attila the Hun and can get things done even in a very uncooperative environment. They don't care about making and keeping friends, just getting the job done. This is both good and bad. Good project management is important, but equally important is the environment. Getting Attila may be a case of treating the symptom and not the problem. Why is it so hard to get things done in your company? Could that be what is really holding back your business?
Far too often projects fail at the requirements phase. That was most likely the case with American LaFrance. The new organization was probably incapable of setting its own requirements and the consultant didn't help.
The next common problem in managing both IT projects and the consultants who usually do those projects is scope. Projects are often too grand by design or by default due to a lack of requirements. In either case you don't know you've bitten off too much until it is too late. This causes many problems and often destroys the ROI value of the project.
Remember that more than 50 percent of big IT projects fail completely with an ROI of zero percent, so while succeeding is good, not failing is even better.
The best consulting efforts are the ones that take a long hard look at the ROI and have a proven track record of making it happen.
The best consultant I ever knew was Christine Comaford-Lynch, who is now an author and a VC and no longer does IT consulting at all. A key part of her success was her requirements gathering process. She turned it into a very effective collaboration effort involving the key people who would use the software. The requirements would be tight, the project would be highly focused, and there would be little or no scope creep. When it came time to implement the project her project managers didn't have to be Attila's -- there was cooperation and enthusiasm. The training and start up of the application was quicker and easier. There were few surprises that needed to be fixed.
The Holy Grail of IT has long been the convergence of applications and databases into a unified environment where everything would work together. The original hope was to use relational databases and base all future applications on them. Next was the ERP wave. Talk about a huge and expensive effort! Putting in ERP was like a Borg invasion. Today we have SOA, which is even more complicated and expensive code that is supposed to be the glue between disparate applications and databases. Most of these approaches follow the classic computer industry business model -- make the customer spend lots of money and invest in lots of consultant time.
There is an easier way to do this stuff. The best consultants are the ones who come with a portfolio of products and tools. Their trick is to have a really good portfolio of stuff that really works, is really good, and can be sold and implemented quickly in a very cost-effective way. So it isn't necessarily a bad thing at all when a consultant offers to sell you tools, as long as they are the right tools and the consultant really knows how to use them.
What's key to my simplified concept of IT consulting is adapting a limited number of very robust and proven products and to do it all in a reasonable amount of time. Having fewer choices is vital because many companies will spend months or years making a decision. And some consulting firms will bill these clients a small fortune as things drag on.
Now to the 10 most frequent lies told by IT consultants. When you hear these lines spoken you have two alternatives: 1) fire the consultant on the spot, and; 2) bring your smartest and most crotchety nerds into the room and make the consultant explain his or her statement to their satisfaction then back it up with some performance guarantee and penalty clause.
1) "This can only be accomplished through a large custom development project."
2) "Of course your data is safe."
3) "We'll need a day or two for optimization and debugging."
4) "Yes, we've done this before. There are several companies using this product (or technology). They really like it."
5) "Server consolidation and virtualization will save you money."
6) "Storage consolidation and virtualization will save you money."
7) "The upgrade (or change) will be seamless and will not affect production."
8) "The upgrade (or change) will be transparent to users."
9) "Yes, we tested this thoroughly before installing it."
10) "If you install Tivoli it will solve all your support problems."
Apr 18 2008
You Never Write, You Never Call
If you use Microsoft's Windows or Apple's OS X and for some reason an application crashes, you know the drill. A dialog box opens automatically ready to report what just happened back to Redmond or Cupertino. It is an opt-in procedure so you can decide not to send the report, which is what I tend to do the third or fourth time the same crash happens. For an Apple or a Microsoft this capability of seeing, immediately and automatically, what went wrong is invaluable for planning that next service pack or security update. Alas, this kind of diagnostic capability hasn't been available to those developers who don't also happen to own the operating system as Apple and Microsoft do. But that fact is changing and now there is a way for many third-party developers to put this same capability into their applications.
PreEmptive Solutions is a software tools company from Ohio that is best known for its DashO and Dotfuscator products, which are used to obfuscate and to some extent optimize bytecodes for Java and .NET applications, respectively. These interpreted programming environments, where a lot of corporate development is done today, are especially vulnerable because the program code is exposed and can easily be copied or messed with. Obfuscation makes such code theft harder to accomplish by changing the appearance of the code, though not its operation. It's hard to track program logic when every variable -- no matter what the actual value -- is called "a" for example.
PreEmptive has added to its latest version of Dotfuscator what it calls "Runtime Intelligence" -- that ability to send data or to call for help when there is trouble with an obfuscated application.
But wait, there's more! Application failure is only one of many possible triggering events for Runtime Intelligence. It can be triggered by a crash but also by a user exit: why did you choose to close the application? This makes it faster and more reliable to gather data from beta releases and make product improvements, for example. Now it is possible to evaluate what users do and don't use in a beta product, where they stopped working, what features were ignored, etc. Why put a lot of effort into a feature that users apparently don't even care about?
The triggering and reporting code is added after the application, itself, is completely finished. This means you can add these services without modifying or even having access to source code. Adding this code, since it happens as part of obfuscation and optimization, not only doesn't make the application bigger, it usually makes the application code smaller and therefore faster to load and run.
While end-users may not have even heard of Dotfuscator, this doesn't mean it isn't already running in some version on their PCs. As part of Microsoft's Development Environment for .NET (though not from Microsoft, interestingly), Dotfuscator or the hooks to run it are in every Windows machine that has currently installed at least one .NET application. So for Windows users, this capability is probably already sitting on their desks.
This would be a good point to say that I have no personal financial interest in PreEmptive Solutions. I just like their products.
What about privacy? What about my data? Doesn't this Runtime Intelligence stuff make me vulnerable to everything from identity theft to mind control by Bill Gates?
Probably not. In most cases it is opt-in, so you can decide not to participate. What generally counts to software companies is statistical significance, so if you opt out of reporting a beta problem chances are enough other people will have stayed in to report all the big bugs. Also Runtime Intelligence is primarily offered as a service by PreEmptive, so the data first goes to them, where it is aggregated and any identity information removed. Corporate users can choose to gather data to their own servers, but since they are also probably reading your e-mail, that horse has already left the barn. Remember there is no specific freedom of speech or even right to privacy in corporate life.
Let me repeat that in case it came as a surprise: there is no freedom of speech or even right to privacy in corporate life.
One area where this new capability will find wide use is in the sale of software, itself. The software business has changed dramatically in the last decade and most applications are today sold or delivered online and the sales cycle generally begins with a potential customer downloading a demo version. It is in the interest of the software company to convert as many of those demos as possible into paid versions and Runtime Intelligence can help that happen.
Evaluation copies are, for most software companies, a black hole. At best the company can hope to learn through activation of the program that it has been used to at least some extent, but that's it. An otherwise very motivated customer could miss the opportunity to buy simply through distraction or a mistake in using the program. Runtime Intelligence, in contrast, can report back to a CRM system when and how an evaluation version has been used. But even more importantly, it will often show exactly when and where the customer STOPPED using the demo, which could indicate a bug or part of the application that could use improvement. The result is more data, more information, and ultimately more sales.
I think Runtime Intelligence will become an important part of building applications in future.
A very different approach to the same kind of problem was presented this week by Google with its Google App Engine. In this instance, of course, the applications run entirely in the Google computing cloud so there is not much to download or even to, frankly, administer. But if your Python coding is good enough it is easy to see how you could emulate parts of the Runtime Intelligence functions I've just covered from PreEmptive. This is very seductive for developers. Let Google sweat the hard stuff, bearing the brunt of scaling your app to galaxy class. But like Amazon's EC2, which competes in a similar space, Google's App Engine is a work very much in progress.
Dave Winer calls Python "the new BASIC" and I suppose he's right, especially in its BASIC-like choice to abandon thirty years of C, C++, Java, and C# technology for a different path. But there will always be new languages and new approaches to computing. What I think we have here that's truly new with Google's App Engine is a company with deep pockets willing to spend some real money to push its own cloud agenda combined with some new technology that is, because of the nature of the service, entirely hidden from us.
Simply put, Google has made some enormous technical breakthroughs using the new multi-core processors. New platforms that use massive numbers of cores and even more massive numbers of program threads per core have led to performance increases in Google's plant that make it possible to roll out services like the Google App Engine. This is an instance not so much of brute force but of brute elegance. But if you are Google what do you do? Do you share these new ideas with your competitors? Not if you can help it. You EMBODY them in new services where the cogs and gears are hidden. It's strategic for Google and important enough that they'll do whatever it takes to make the platform attractive to us while also doing whatever it takes to keep us from knowing how it really works.
Apr 11 2008