Friday, February 1, 2008

Microsoft's Yahoo bids speaks as much of failure as opportunity

Is Microsoft buying Yahoo! because it has succeeded in its own Windows Everywhere strategy and 12 years of lackluster performance on the Web?

Is Microsoft trying to buy Yahoo! because Yahoo! is seemingly at a weak point, unable to dominate in the key areas of search, advertising, and media?

Nope, Microsoft is trying to buy Yahoo! because neither Microsoft nor Yahoo! is succeeding on the Web in the ways that they should. And it's not just Google that has an edge: Consider Apple, eBay, Salesforce.com, Facebook, MySpace, Disney.

And how much sense does putting Microsoft and Yahoo! together make now? Not as much as it did two years ago when Yahoo! was stronger and Google was weaker. We should also thrown in that Apple and Amazon are also much stronger now than at any time in the past. The media conglomerates are starting to figure things out.

So once again, we have Microsoft throwing outrageous amounts of money late at what should have been an obvious merger for them a long time ago. I recall is discussion on the Gillmor Gang podcast at least two years ago that wondered when -- not if -- Microsoft would buy Yahoo! Most of those on the call, including me said it was the only outcome for Yahoo! and the only way for Microsoft to blunt Google.

But that was then, and this is now. So the burning question today is not whether a Microsoft-Yahoo! mashup makes sense -- it has made sense for years. The question is whether it makes sense now, at this outlandish price, and if this in fact marks the point where Microsoft makes a desperate and devastating mistake.

Is the Yahoo! cloud built on Windows? Nope. So the model of Windows Everywhere is junked. Accessing Yahoo! services only requires a browser -- so much for the "software plus services." Will the burgeoning Microsoft cloud and the aging Yahoo clouds work well together? Will one be able to absorb the other. I say no to both. These will be separate and ill-fitting infrastructures. Will the Redmond and Silicon Valley cultures work well, or will huge layoffs in California portend even more gridlock in the eastern Seattle suburbs?

What might be even worse -- Microsoft make try and require all the Yahoo! users to get better service via their clients. Would they be deluded enough to try and tie Microsoft client-side software to Yahoo! web services? Watch the flood to Google, if they do. Watch for Google to scream about monopoly abuses if they do. [Good thing the new mega mother of all hairballs will be under anti-trust review for a bit longer, eh?]

Does this mean what Microsoft was wrong about open source too? Because Yahoo! has built its infrastructure on a lot of open source code, including its cloud infrastructure keystone Hadoop. So Microsoft will own one of the world's most massive open source distributed datacenters. As an enterprise, should you choose a Windows platform -- or Microsoft's new choice to win on the web -- open source?

Right, so for the need to win in search, media and adverting, Microsoft is now selling its Windows Everywhere soul. They have been handing you an expensive line of proprietary crap for years, and by buying Yahoo! and its totally different approach to Web infrastructure -- they admit it.

What's more, will the world like getting their news from Microsoft? As a user, which search engine will I get when I log in to Yahoo! or MS Live? Which email will I get when I log in? Can he Yahoo! directory merge with the Live, nee Hotmail, directory? Which company will be the one I think of as the "brand"?

This spells a significant period of confusion. And that's for consumers, IT buyers, enterprise CIOs, and advertisers as well.

And for the enterprises that have invested their fates in Microsoft infrastructure, how will they get their Web services? Will it be Yahoo! for the consumers, and Microsoft Live or the business folk? Or vice versa? Both, a mish-mash? Yikes!

What's more, the Microsoft-Yahoo! amalgamation will become the enemy of the media companies worldwide. There was a certain détente between Microsoft alone and Yahoo! alone and the media world. No more. And Google could position itself as the happy medium (pun intended).

This proposed deal smacks of desperation, not multiplication of growth opportunities. But the price premium probably makes it inevitable. The only way to make this work is for Microsoft to spread itself more thickly as a media, advertising, technology, services, platform, tool -- everything to everybody. The risk is to be less and less of anything to anybody.

Microsoft is perhaps perceiving itself as pouncing on Yahoo!, given its current disarray. There's the weird board action, and the layoffs, and the performance issues. But this is weakness buying weakness, with a large period of confusion, dilution of value and brands, and risky alignments of cultures and technology.

And this from Microsoft - the hithertofore conservative acquirer that doesn't go for the big, blow-out acquisitions. Well, this is the big blow-out media merger of the year. Seems that going in the other direction, of splitting Microsoft up into logical sections that can operate and compete on their own, is out. For some time, no doubt.

The biggest risk is that if this ends up the mess it appears, that it just may end up just driving more consumers, advertisers, and businesses into the waiting arms of the singularly understood and focused Google, Apple, and IBM. It could well backfire.

And I for one will miss both Yahoo! and Microsoft because whatever they cobble together from the two won't be able to do the same that either did separately. It will be hard to define just what it is ... I think I'll call it Amalgamated Digital. It certainly isn't "micro," and it's not "soft." Any yahoo can see that.

Monday, January 28, 2008

WSO2 targets 'Social Enterprise' with combined JavaScript/Web services Mashup Server

WSO2, an open-source SOA provider, has combined JavaScript programming and Web services with the launch of its Mashup Server 1.0.

This open-source offering, which can be downloaded without subscription fees, will allow enterprises to consume, aggregate, and publish information in a variety of forms and from a variety of sources.

At the same time, WSO2, based in Colombo, Sri Lanka, and Mountain View, Calif., has announced the beta release of Mooshup.com, a hosted online version of the Mashup Server, which provides a community site for developing, running, and sharing mashups. [Disclosure: WSO2 has been a sponsor of BriefingsDirect podcasts.]

Each new service in the mashup comes with metadata that is designed to simplify consumption by other mashups and Web services clients, as well as artifacts that simplify construction of user interfaces (UIs) in browsers, rich applications, and other environments. Because it supports the separation of content and presentation, Mashup Server enables recursive mashups, meaning one mashup can be consumer by another. It also broadens the user interface beyond HTML to RSS and Atom feeds, email, and instant messaging.

The use of JavaScript leverages the broad base of developers who use the broad-based language, and mashups can be authored directly within the administrative UI, with a simple text editor, or with any popular integrated development environment (IDE).

The beta version of Mashup Server has already gotten good notices. Ohloh.net estimates that it would have cost an enterprise $571,736 to write this project from scratch, figuring nearly 45,000 lines of code and 10 person-years.

Ganesh Prasad, who blogs at The Wisdom of Ganesh, has a lot of good things to say, based on the beta release:

So is the WSO2 Mashup Server the one that will bring balance to the Force? A powerful programming language. Laughably easy XML manipulation. Simple access to SOAP services and REST resources. Transparent publication of itself as a service or resource in turn. Isn't this the holy grail of service composition?

WSO2 Mashup Server seems to be the industry's best-kept secret for now.

The Mashup Server is built on the WSO2 Web Services Application Server, based on Apache /Axis2, and WSO2’s built-in registry. Key features include:

  • The ability to author and deploy mashups using notepad and a Mashup Server virtual directory.
  • Auto-generation of Web service and UI artifacts, such as WSDL, REST URLs, JavaScript stubs.
  • Try-It feature to help developers invoke and debug mashups or start developing their own rich HTML clients.
  • Web 2.0-style console, powered by the WSO2 Registry, which natively supports different users, and allows tags, comments, and ratings and a powerful search capability.

The Mashup Server is available for download. Mooshup.com membership is free, contingent on email verification.

Progress Software adds cross-process visibility with Actional 7.1

Progress Software has beefed up its Actional SOA management offerings with the release today of Progress Actional 7.1, which provides unified visibility into business processes, and connects those business processes to the underlying SOA infrastructure.

Key features of the latest release include an automatic discovery feature that keeps information accurate, allowing users to compare how processes change from day to day. User can also set thresholds for alters about behavior and performance, and policy enforcement will automatically adjust when services or processes change.

Progress, Bedford, Mass., added the Actional product line to its SOA arsenal just a little over two years ago with the acquisition of Actional Corporation in a $32-million deal.

Progress said that Actional 7.1 will integrate with Lombardi TeamWorks, and the company plans to provide native support for other business-process management (BPM) solutions, including offerings from Software AG and Fujitsu. Actional also includes a software development kit (SDK) that allows third parties to add support for other BPM and SOA infrastructure products.

The new version also includes support for non-XML payload data, which is designed to allow users to inspect and analyze message content in such existing services as Remote Method Invocation (RMI) and Enterprise JavaBeanT (EJB).

Last July, I had a lengthy podcast discussion about Software as a Service (SaaS) with Colleen Smith, managing director of Saas for Progress. You can listen to the podcast here.

For more information on the latest offering, see the Actional Web site.


Wednesday, January 23, 2008

IBM's AptSoft acquistion opens SOA event processing to line of business personnel

IBM has beefed up it's business process management (BPM) offerings in the service oriented architecture (SOA) space with today's announcement that Big Blue is acquiring AptSoft Corp., Burlington, Mass., a provider of business event-processing software. The move also extends event-processing capabilities to line-of-business personnel.

Business event processing identifies event patterns, connections between events, and allows users to establish triggers for action when certain trends appear. As SOA extends the reach of businesses and incorporates data and transactions both from inside and outside the enterprise, identifying both positive and negative trends can aid the company in responding quickly to either opportunities or threats.

IBM already has event-processing offerings in their portfolio, but according to Ed Lynch, business integration portfolio product manager, what AptSoft brings to the table is a set of tools that takes these capabilities out of IT and puts them in the hands of business people. It also moves event processing out of its traditional niche in financial services and enables it across industries and sectors.

Retailers, for example, can use event processing to proactively alert them about the success or failure of a product as goods move off the shelf, allowing them to make changes to pricing, inventory and marketing campaigns in real time; and by fleet management companies, to help them make instantaneous decisions on how to deal with products that are lost in transit or delayed due to unforeseen circumstances.

AptSoft is privately held, and neither company released the financial details of the deal. The AptSoft offerings will be wrapped into the WebSphere brand.

Thursday, January 17, 2008

IBM and Kapow on how enterprises exploit application mashups and lightweight data access

Listen to the podcast. Read a full transcript. Sponsor: Kapow Technologies.

The choices among enterprise application development and deployment technologies has never been greater. But what's truly different about today's applications is that line of business people can have a greater impact than ever on how technology supports their productive work.

By exploiting mashups, situational applications, Web 2.0 techniques and lightweight data access, new breeds of Web-based applications and services are being cobbled together fast, cheap, and without undue drain on IT staffs and developers. Tools and online services both are being used to combine external web services like maps and weather with internal data feeds and services to add whole new dimensions of business intelligence and workflow automation, often in a few days, often without waiting in line in order to get IT's attention.

And while many of these mashups happen outside of IT's purview, more IT leaders see these innovative means as a productivity boon that can't be denied, and which may even save them time and resources while improving IT's image in the bargain. The trick is to manage the people and new processes without killing off the innovation.

To help weed through the agony and ecstasy of Enterprise 2.0 application development and deployment in the enterprise, I recently chatted with Rod Smith, Vice President of Internet Emerging Technologies at IBM, and Stefan Andreasen, the Founder and CTO of Kapow Technologies.

Here are some excerpts:
In times of innovation you get some definite chaos coming through, but IT and line of businesses see this as a big opportunity. ... The methodology here is very different from the development methodology we’ve been brought up to do. It’s much more collaborative, if you’re line of business, and it’s much more than a set of specifications.

This current wave is really driven by line of business getting IT in their own hands. They’ve started using it, and that’s created the chaos, but chaos is created because there is a need. The best thing that’s happening now is acknowledging that line-of-business people need to do their own thing. We need to give them the tools, environments and infrastructure so they can do it in a controlled way -- in an acceptable, secured way.

... As we opened up this content [we found] that this isn't just about IT managing or controlling it. It’s really a partnership now. ... The line of business wants to be involved when information is available and published. That’s a very different blending of responsibility than we've seen before on this.

There is a lot of information that’s out there, both on the public Web and on the private Web, which is really meant to be human-readable information. You can just think about something as simple as going to U.S. Geological Service and looking at fault lines of earthquakes and there isn't any programmatic API to access this data.

This kind of data might be very important. If I am building a factory in an earthquake area, I don’t want to buy a lot that is right on the top of a fault line. So I can turn this data into a standard API, and then use that as part of my intelligence to find the best property for my new factory.

It’s just not internal information they want. It's external information, and we really are empowering these content developers now. The types of applications that people are putting together are much more like dashboards of information, both internally and externally over the Internet, that businesses use to really drive their business. Before, the access costs were high.

Now the access costs are continuing to drop very low, and people do say, "Let’s go ahead and publish this information, so it can be consumed and remixed by business partners and others,” rather than thinking about just a set of APIs at a low level, like we did in the past with Java.

If you want to have automatic access to data or content, you need to be able to access it in a standard way. What is happening now with Web Oriented Architecture (WOA) is that we're focusing on a few standard formats like RESTful services and on feeds like RSS and Atom.

So first you need to be able to access your data that way. This is exactly what we do. Our customers turn data they work with in an application into these standard APIs and feeds, so they can work with them in an automated way. ... With the explosion of information out there, there's a realization that having the right data at the right time is getting more and more important. There is a huge need for getting access in an automated way.

The more forward-thinking people in IT departments realize that the faster they can put together publishable data content, they can get a deeper understanding in a very short time about what their customers want. They can then go back and decide the best way to open up that data. Is it through syndication feeds, XML, or programmatic API?

Before, IT had to guess usage and how many folks might be touching it, and then build it once and make it scalable. ... We've seen a huge flip now. Work is commensurate with some results that come quickly. Now we will see more collaboration coming from IT on information and partnerships.

What is interesting about it is, if you think about what I just described -- where we mashed in some data with AccuWeather -- if that had been an old SOA project of nine or 18 months, that would have been a significant investment for us, and would have been hard to justify. Now, if that takes a couple of weeks and hours to do -- even if it fails or doesn’t hit the right spot -- it was a great tool for learning what the other requirements were, and other things that we try as a business.

That’s what a lot of this Web 2.0 and mashups are about -- new avenues for communication, where you can be engaged and you can look at information and how you can put things together. And it has the right costs associated with it -- inexpensive. If I were going to sum up a lot of Web 2.0 and mashups, the magnitude of drop in “customization cost” is phenomenal.

What’s fun about this, and I think Stefan will agree, is that when I go to a customer, I don’t take PowerPoint charts anymore. I look on their website and I see if they have some syndication feeds or some REST interfaces or something. Then I look around and I see if I can create a mashup of their material with other material that hadn’t been built with before. That’s compelling.

People look and they start to get excited because, as you just said, they see business patterns in that. "If you could do that, could you grab this other information from so-and-so?" It’s almost like a jam session at that point, where people come up with ideas.
Listen to the podcast. Read a full transcript. Sponsor: Kapow Technologies.

Wednesday, January 16, 2008

Sun refuses to give up on software acquisitions, buys MySQL for $1 billion

We knew that Sun has been lusting after a real software business in addition to Solaris. We knew that Sun "shares" -- that it digs open source, including Solaris and Java. And we knew that Sun had a love-hate relationship with Oracle and a hate-hate relationship with IBM and Microsoft.

So toss this all in a big pot, put on simmer and you get a logical -- if not three years too late -- stew: Sun Microsystems intends to buy MySQL AB and its very popular open source database. The announcement comes today with a hefty price tag of $1 billion.

The MySQL purchase by Sun makes more sense than any other acquisition they have done since they botched NetDynamics 10 years ago. This could be what saves Sun.

Sun can make a lot of mischief with this one, by taking some significant oxygen out of its competitors' core database revenues. Sun can package MySQL with its other software (and sell some hardware and storage, to boot), with the effect that the database can drive the sales of operating systems, middleware and perhaps even tools. Used to be the other way around, eh? Fellow blogger Larry Dignan sees synergies, too. And Tony Baer has some good points.

Who could this hurt if Sun executes well? IBM, Oracle, Microsoft, Sybase, Red Hat, Ingres. It could hurt Microsoft and SQL Server the most. Sun could hasten the tipping point for the commercial relational database to go commodity, like Linux did to operating systems like Unix/Solaris. Sun could far better attract developers to a data services fabric efficiency than with its tools-middleware-Solaris stack alone. As we recently saw, with Microsoft buying Fast Search & Transfer, the lifecycle of data and content is where software productivity begins and ends.

Sun will need to do this right, which has its risks given Sun's record with large software acquisitions. And Sun won't get a lot of help ecology-wise, from any large vendors. This puts Sun on a solo track, which it seems to prefer anyway. I wonder if the global SIs other than IBM will grok this?

Yes, it makes a lot of sense, which makes the timing so frustrating. I for one -- and I was surely not alone -- told very high-up folks at Sun to buy and seduce MySQL three years ago. (I also told them to merge with SAP, but that's another blog.) When Sun went and renamed it's SunONE stack to the Java what's-it-all, I warned them it would piss off the community. It did. I also told them Oracle was kicking their shins in. It did. I said: "Oracle has Linux, and you have MySQL." Oh, well.

[Now, Oracle has BEA, which pretty much dissolves any common market goals that Oracle and Sun once had as leaders of the anti-Microsoft coalition. The BEA acquisition by Oracle was a given, hastened no doubt to the close by the gathering gloom of of a U.S. economic recession.]

I'm glad the Sun-MySQL logic still holds, but Oracle has already done the damage with Linux, we saw how that Unix-to-Linux transition put Sun on its knees, and on the defensive. And we know that Sun has only been able to get one leg up since then, albeit refraining from falling over completely. Now, with BEA, Oracle with its Linux and other open source strengths -- not to mention those business apps -- will seek to choke out the last light from Sun, and focus on IBM on the top end, and Microsoft on the lower end. As Larry Ellison said, there will be room for only a handful of mega-vendors -- and we cannot be assured yet that Sun will meaningfully be one of them (or perhaps instead the next Unisys).

Indeed, the timing may still have some gold lining .... err, silver lining. Sun has had to pay big-time for MySQL (a lot more than if they had taken a large position in the AB two years ago). And what do they get for the cool $1 billion? Installed base, really. Sun says MySQL has millions of global deployments including Facebook, Google, Nokia, Baidu and China Mobile.

There's more, though. The next vendor turf battles are moving up yet another abstraction. Remember the cloud thing? Sun in sense pioneered the commercialization of utility computing, only to have Amazon come out strong (and added a database service in the cloud late last year). IBM has cloud lust. Google and Microsoft, too. Sun's acquisition of MySQL could also help it become a larger vendor to the other cloud builders, ie telecos, while seeding the Sun cloud to better rain down data services for its own users and developers.

And that begs the question of an Oracle-BEA cloud. Perhaps a partnership with Google on that one, eh? Then we have the ultimate mega-vendor/provider triumvirate: Apple-Google-Oracle. It's what Microsoft would be if it broke itself up properly and got the anti-trust folks off of their backs (not to mention a reduction in internal dysfunction). And that leaves loose change in the form of Sun, IBM, Amazon, eBay, and the dark horses of the telecos. Sun ought to seduce the telcos, sure, and they know it. Problem is the telecos don't yet.

Google may end up being the cloud king-maker here, playing Oracle and Sun off of one another. Playing coy with IBM, too. Who will partner with Amazon? Fun times.

Surely if Sun can produce a full-service cloud built on Solaris-Intel-Sparc that includes low-energy-use virtualized runtimes, complementary tools, and integrated database -- and price it to win -- well, the cloud wars are on. Sun might hang on for yet another day or two.

Tuesday, January 15, 2008

MuleSource takes aim at SOA governance, launches subscription-based ESB

MuleSource, a provider of open-source service-oriented architecture (SOA) infrastructure software, has jumped into the SOA governance pool with the community release today of Mule Galaxy 1.0.

Galaxy, an open-source platform with integrated registry and repository, allows users to store and manage an increasing number of SOA artifacts and can be used in conjunction with the Mule enterprise service bus (ESB) or as a standalone product. It was also designed with federation in mind, being pluggable to other registries.

In other news today, Mule also announced a subscription-only version of its ESB, as well as a beta version of Mule Saturn, an activity monitoring tool for business processes and workflow.

The subscription ESB smacks of "Mule on-demand.com." It will be interesting to see how well this does in terms of uptake. Integration as a service seems to be gaining traction. We're also told this "ESB in the cloud" supports IBM CICS, which is interesting ... are we approaching transactional mashups en masse?

As enterprises use SOA to expand their consumption of services from both inside and outside the business, governance becomes an all-important issue for control. Galaxy provides such registry and repository features as lifecycle, dependency, and artifact management -- along with querying and indexing.

A RESTful HTTP Atom Pub interface facilities integration with such frameworks as Mule, Apache CXF, and WCF. Galaxy also provides out-of-the-box support for various artifact types, including Mule, WSDLs, and custom artifacts.

Galaxy can be downloaded now, and a fully tested enterprise edition will be available in Q2 for Mule Enterprise subscribers.

On the ESB front, Mule has taken aim at the Fortune 2000 customer base with the introduction of Mule 1.5 Enterprise Edition, a subscription-only commercial enterprise packaging of the Mule ESB integration platform. Prior to this announcement, the ESB had been available only in the community edition.

It's sort of funny, as commercial providers offer open source versions of their products, we also see open source providers handing up commercial versions. I guess that means everyone needs one of each? Perhaps the versions (ala Fedora to RHEL) are becoming alike, in that it takes a subscription of some sort to get the real goods and use them.

Take the traffic when you can, I've always said. Mule's popularity was in evidence in November, when the company announced that community downloads had surpassed one million.

The new enterprise offering is available for a single annual fee and encompasses news features, including:

  • Support for Apache CXF Web Services Framework
  • Patch management and provisioning via MuleHQ
  • Streaming of large data objects through Mule without being read into memory
  • Nested routers to decouple service implementations from service interfaces
  • Support for multiple models
  • Diagnostic feedback for customer support

More information is available from the MuleSource site.

For users looking for a business-activity monitoring tool, MuleSource has released a beta version of Mule Saturn 1.0, which is designed to complement an SOA infrastructure by providing detailed logging and reporting on every transaction that flows through the Mule ESB.

Saturn allows staff to drill down on transaction details and set message-level breakpoints for deep log analytics, allowing for continuous custom improvement. Key features include:

  • Business user view into workflow and state
  • Process visualization
  • Search on transaction, date, various ID
  • Reporting on service-level agreements

Saturn is available immediately to MuleSource subscribers.

Monday, January 14, 2008

WSO2 Web services framework builds bridge between Ruby and enterprise apps

WSO2 has built a bridge between Ruby-based applications and enterprise-class Web services with the introduction of its Web Services Framework for Ruby (WSF/Ruby) 1.0.

WSF/Ruby, an open-source framework for providing and consuming Web services in the Ruby object-oriented programming language, offers support for the WS-* stack, allowing developers to combine Ruby with security and messaging capabilities required for enterprise SOAP -based Web services. Disclosure: WSO2 is a sponsor of BriefingsDirect podcasts.

WSO2 Chairman/CEO Sanjiva Weerawarana explained the bridging capabilities in a pre-release interview with Infoworld:

While Ruby has been popular in the Web 2.0 realm, sometimes it needs to talk to legacy architectures, he said. With the new framework, developers could build a Web application using Ruby and then hook into enterprise infrastructures, such as JMS (Java Message Service) queues. For example, a Web site might be built with Ruby that then needs to link to an order fulfillment system based on an IBM mainframe or minicomputer, Weerawarana said.

With WSF/Ruby, developers can also consume Web services with Representational State Transfer (REST). WSF/Ruby also provides a fully open-source Ruby extension based on Apache Axis2/C, Apache Sandesha2/C, and Apache Rampart/C.

WSF/Ruby features both client and service APIs. The client uses the WSClient class for one-way and two-way service invocation support. The service API for providing Web services used the WSService class with support for one-way and two-way operations. Both APIs incorporate WSMessage class to handle message-level options.

WSF/Ruby 1.0 supports basic Web services standards, including SOAP 1.1 and SOAP 1.2. It also provides interoperability with Microsoft .NET, the Apache Axis2/Java-based WSO2 Web Services Application Server (WSAS), and other J2EE implementations. Key features of WSF/Ruby 1.0 are:

  • Comprehensive support for the WS*- stack, including the SOAP Message Transmission Optimization Mechanism (MTOM), WS-Addressing, WS-Security, WS-SecurityPolicy, and WS-Reliable Messaging.
  • Secure Web services with advanced WS*-Security features, such as encryption and signing of SOAP messages. Users also can send messages with UsernameToken and TimeStamp support.
  • Reliable messaging for Web services and clients.
  • REST support, so a single service can be exposed both as a SOAP-style and as a REST-style service. The client API also supports invoking REST services using HTTP GET and POST methods.
  • Class mapping for services, enabling a user to provide a class and expose the class operations as service operations.
  • Attachments with Web services and clients that allow users to send and receive attachments with SOAP messages in optimized formats and non-optimized formats with MTOM support.
According to WSO2, WSF/Ruby has been tested on Windows XP with Microsoft Visual C++ version 8.0, as well as with Linux GCC 4.1.1.