Category Archives: software development

Moonlight update: Silverlight 2 on Linux hardly started

Miguel de Icaza has an update on Moonlight, a third-party but official implemention of Silverlight for Linux.

Although progress is rapid, it is disappointing to read that a Silverlight 2.0 implementation is hardly started:

Silverlight 2.0 Other than the JIT support for Silvelright 2.0 at this point we have not done any work on it (well there are 3 classes stubbed privately).

There are two reasons for this: the updated 2.0 API is not public and although we have access to it, it is a bit of a mess to try to keep two separate trees (public and private) to support this and since Mix is just around the corner, we will just wait until next week.

The second reason is that we want to focus on shipping 1.0, completing the media pack integration and working on the configuration aspects of Moonlight (auto-update configuration for instance).

Good reasons; but the question it raises is this: by how long will Linux implementations lag the Windows and Mac releases of Silverlight? Silverlight 2.0 is hugely important because it enables .NET code to run. I constantly meet folk who are developing for Silverlight but waiting for version 2.0 as the real thing. Version 1.0 is browser JavaScript only.

More positively, at least we know that Mono already has a decent desktop implementation of .NET, so the fundamentals are there.

Technorati tags: , , ,

Silverlight steals the show at Microsoft’s UK Heroes launch

I attended Microsoft’s “Heroes Happen Here” launch in London yesterday, which overlapped the US launch presented by CEO Steve Ballmer. The launch is for Visual Studio 2008, Windows Server 2008, and SQL Server 2008, though these products are in varying degrees of readiness.

The event was marred by excessive reliance on buzzwords like “Dynamic IT” – someone should tell Microsoft that phrases like this, or “People Ready” which was used for the Vista launch, have no meaning. Dr Andrew Hopkirk from UK’s National Computing Centre enthused about the general benefits of virtualization, which led to a comical moment later. I asked one of Hopkirk’s colleagues what the NCC thought about Microsoft’s Hyper-V or other virtualization technologies. “Oh, we haven’t evaluated it,” he said. “Most people use VMware and they love it”.

I hate to be disloyal, but the US event which was relayed by satellite, and which hardly any of the UK journalists watched, was more up my street. Ballmer didn’t shout too much, and I liked the drilldowns into specific features of the three products.

Still, after several dry presentations the UK event brightened up when Paul Curtis from EasyJet, a UK budget airline, showed us a proof-of-concept Silverlight application which the company plans to implement on its web site towards the end of this year. We saw an attractive Rich Internet Application which was a mash-up of flight routes and fares, Microsoft Virtual Earth, and reviews from TripAdvisor. Here’s a blurry snap of how you might book a hotel in Barcelona. It’s a compelling visual UI which of course reminded me of similar things I’ve seen implemented with Adobe’s Flash and Flex. Behind the scenes the app will use Server 2008, IIS 7.0, and a SQL Server 2008 Data Warehouse, so this is the perfect case study.

I wanted to ask Curtis whether he was happy with Silverlight’s cross-platform capabilities, and why he was using Silverlight in preference to Flash. However, his bio states that he is a member of the Windows Live Special Interest Group and on the Microsoft Architect Council, so I suspect the answer would be, “it’s what we know.” It does support my impression that despite the rise of Flash, there is still a place for Silverlight within the large Microsoft platform community.

Finally, there was brief mention of high take-up for Microsoft Softgrid, which is described as “application virtualization”. I’ve made this the subject of a separate post.

PS: I met blogger Mark Wilson at the event; he has a more detailed write-up.

Microsoft Softgrid: virtualization for applications

At Microsoft’s Heroes Happen Here launch, I caught up a little with something to which I’ve paid insufficient attention: Microsoft Softgrid, which is described as Application Virtualization. Softgrid is a way of packaging an application and its dependencies into an isolated bundle that runs on the client, but hardly touches the client environment. Each application has its own virtual registery, DLLs, COM DLLs, and even a virtual file system. As a consequence, it “just works”. It also lets you run otherwise incompatible applications side by side. For example, you could have an old Access 97 application, for which the developer left long ago and nobody dares to touch the code, and run it alongside Access 2007. This is apparently a huge hit for Microsoft, which does not surprise me as it solves all sorts of deployment problems. Unfortunately it’s not that easy to get Softgrid: you need to sign up for a thing called the Desktop Optimization Pack for Software Assurance and it is hooked to other components of Microsoft’s enterprise server system:

I would like to see Softgrid’s technology also made available for more general use.

Technorati tags: ,

Trolltech says Qt for Windows CE coming in May

Trolltech has announced Windows CE support in the 4.4 release of Qt, its cross-platform development framework. A pre-release is already available. Qt already supports desktop Windows, Linux, and Mac OS X, so this plugs a significant gap. Features include SVG (Scalable Vector Graphics) and OpenGL. It’s good to see this going ahead  despite Nokia’s acquisition of Trolltech, which is set to be completed in the second quarter of 2008. Nokia is committed to a couple of rival embedded operating systems, Linux and Symbian.

What about Qt for Symbian then? There are hints that it will happen. Then again, perhaps Nokia will increase its focus on Linux?

Technorati tags: , , ,

Adobe AIR now available; not just consumer fluff

Adobe has released AIR and you can download the runtime and SDK now, as well as FlexBuilder 3, the official IDE for AIR. Just to remind you, AIR is a way of running Flash applications on the desktop, supplemented by SQLite, a fast local database manager.

Among the most interesting case studies I’ve seen is from LMG, which runs loyalty schemes including the Nectar card and Air Miles. The big deal for the retailers is that using your loyalty card lets them identify who is buying what, providing mountains of data which can be mined for trends and the like. I do mean mountains. Nectar is used by Sainsburys. Between 25 and 40 million “basket items” are added to the database each day, and the database holds 2 years of data.

LMG’s Self-serve is an app in development which enables Sainsburys and its suppliers to analyze this data; it could potentially be used by other retailers too. “The application answers questions like how’s my brand performing, who’s buying my brand, what else are they buying,” says Garth Ralston, LMG’s Business Intelligence Development Manager.

Self-Serve is built with AIR and Flex. “Excel spreadsheets, which some of our competitors use, and the pie charts than you can create within them, are so 1990’s”, says Ralston. “We’re looking for a little bit more of the Wow factor.”

A couple of things particularly interested me. One is that SQLite is critical for the app, which works by downloading large chunks of data and manipulating it on the client. This means that Self-Serve would not work as a browser application, unless possibly with Google Gears, which also uses SQLLite. Another is the importance of offline working. “The ability to have a user run the app, run a report, download the data to their system, take the laptop on the train and continue to work is an absolute business requirement”, says Ralston.

James Governor, Redmonk analyst, told the press that BMC will be using AIR as a front-end to integrate its mainframe management offerings, and SAP will be using it. “Frankly, I think this will be the front-end for all SAP business applications,” he said. In other words, AIR is not just consumer fluff.

Governor is just back from Sun, as I am, and while I was there I picked up some anxiety at the way Flash and now AIR are doing what Java was intended to do – provide a rich cross-platform client. Has Adobe stolen Sun’s market? “Sun is quite capable of stealing its own market”, he said. “Java just hasn’t delivered the kind of rich desktop experiences that we would expect and hope.” That said, note that FlexBuilder is a Java application, Adobe’s server-side LiveCycle data services are Java, and Adobe’s ColdFusion runs on Java, so there are pros and cons here for Sun’s technology.

Actually, I suspect you could build Self-Serve in Java without much difficulty. The big win for AIR is that it’s home territory for multitudes of Flash designers. This is as much about designer and developer communities as it is about technology. The same applies to Microsoft’s Silverlight, which is ideal for Visual Studio developers to whom Flash is foreign.

I still have reservations about AIR, though there is also much to like. It’s early days of course; I’m looking forward to trying it for real. I also love the way these new initiatives are making us rethink the design of essential applications that have remained essentially unchanged for years.

Microsoft moves to protect its Office business in format war

Here’s a key snippet from yesterday’s interoperability announcement:

We’re also designing new APIs for Microsoft Word, Excel and PowerPoint applications that will enable developers to plug in additional document formats and allow users to select those formats as their default for saving documents.

Translation: if OOXML fails to get ISO standardisation, and/or if the rival ODF catches on or is mandated by institutions, then Microsoft wants you to keep using Office.

Product Manager Gray Knowlton has a little more detail here.

I’m not clear how extensive these changes are. Presumably it amounts to more than just tweaking the open and save dialogs to enable different defaults. Office applications already let you select from a range of different formats.

A few further comments. First, I’d like to see OOXML standardized. Aggressive IBM-sponsored lobbying has not convinced me this is a bad idea. And yes, I’ve pored over the spec and even done a little development with OOXML. Standardization tends to improve documentation and helps to protect developers from arbitrary changes.

It is interesting to see someone like Patrick Durusau, Chair of incits, coming out in favour of  OOXML standardization [PDF]:

I have seen some attacks on OpenXML saying it is not an “open” standard. I am quite puzzled by those attacks and think that OpenXML makes the case for open development of standards.

Understand that as the Project Editor for ISO/IEC 26300 and the OpenDocument Format TC editor in OASIS, I carry no brief for OpenXML. However, a well defined and publicly controlled OpenXML would be a great benefit for future work on the OpenDocument Format standard so I have no reason to wish it ill.

That does not mean Microsoft has done everything right. Microsoft’s Jean Paoli, now an evangelist for standardization, told me three years ago that OOXML was not suitable to be managed by a standards body. Why the change of heart? Simply, the threat of losing market share to a rival that was standardized. Microsoft had years of unchallenged Office supremacy in which it could have opened up its formats; but did nothing until its profits were threatened.

This should tell us something about the benefits of competition.

Despite Microsoft’s efforts, gains in ODF market acceptance will damage Microsoft Office. It will take more than a few API changes to make Microsoft Office as good an ODF editor as Open Office, which has a family relationship with the rival formats.

Standardization is only a small piece of this puzzle. On the Microsoft side, Office is a decent product with massive market dominance. On the ODF side, Open Office is also a decent product and is free and open source. The fight will still be on, no matter how the standards thing plays out.

Technorati tags: , , , , ,

Microsoft promises WPF DataGrid, big performance improvement for .NET clients

Microsoft’s Scott Guthrie posts about coming service updates to client-side .NET (Windows Forms and Windows Presentation Foundation). He says we can expect:

  • A new, quicker and more efficient setup framework
  • 25%-40% faster start-up for applications using .NET 2.0 and higher, and smaller runtime footprint
  • More hardware acceleration in WPF, plus better video performance and data-handling improvements
  • A DataGrid, Ribbon, and Calendar/DatePicker for WPF
  • Improved WPF designer for Visual Studio 2008

These address common real-world complaints. I’m sceptical; when version 1.0 of the .NET Framework came out, Microsoft said it was working to reduce the runtime memory footprint for Windows Forms applications, but it never happened. Let’s hope this time it will be different.

Sun reflections: open source but not open development?

I’m at the airport following two days of Sun’s Global Media Summit. I’ll be writing up various pieces on this, but in the meantime here are some quick reflections.

In the first dot com boom Sun could do no wrong; its servers were lapped up by every company with an internet presence. In the ensuing years it failed to sustain its momentum and began posting losses. It created Java, which transformed enterprise computing, but somehow others (IBM,Oracle,BEA) seemed to profit from Java more than Sun itself.

Sun has recovered. We were told repeatedly that it has posted profits for several consecutive quarters; its margins are good and its focus is now on growth. It has bold plans for its Solaris operating system. It wants to transform Java into something that will rival Flash and Silverlight as well as doing valuable but dull work on application servers. It still believes in thin clients. It can supply eco-friendly datacenters that offer money savings as well as a reduced carbon footprint.

Above all, Sun is engaged in a fascinating experiment around open source. Most of its software is both free and open source, including of course its big recent acquisition, MySQL. Sun is a company with 4,000 more-or-less unfettered bloggers, talks a lot about community, and wants to be considered just as much an open source company as, say, Red Hat or indeed MySQL.

Has Sun figured out how to do open source and remain profitable? It says it has; though part of its argument is that even free software users need hardware. And if there was one thing I learned this week it is the extent to which Sun is a hardware company. Another journalist said that the one word which sums up Sun is “Datacenter.” We heard a lot about the “Niagara” 64-thread processor; the “Thumper” storage server; and the “Blackbox” datacenter-in-a-container; and we were given a tour of one of Sun’s own datacenters in Santa Clara.

Nevertheless, Sun is serious about open source, though it is early days and the company has not worked out all the implications. Some feel that Sun wants to retain a degree of control that makes Linux-like freedom and diversity impossible. Here’s Ben Rockwood, an external member of the governing board of Open Solaris:

…we have open source but we don’t have open development. Sun has done an admirable job with releasing code, but Sun’s track history in the arena of open development efforts with the free software community has been abysmal. Many engineers inside of Sun “get it” (look at IPS, or almost anything Dr. Stephen Hahn is involved in, just beautiful) but somewhere in that middle-management there is a disconnect.

If Simon Phipps and others like him have their way the community will be “rebooted” from what most of us envisioned, an open development effort in which Nevada [Solaris 11] is developed as a community effort, to a glorified support infrastructure in which the “community” is really just a bunch of bi-standers with no real involvement. The later case is apparently closer to the MySQL model, which I refer to as “glass house development”, that is, you can look in at whats going on but you’re not part of the action.

These tensions and its whole open source experiment will make Sun a fascinating company to watch.

Sun is also serious about eco-friendly computing. In the context of global warming, this is smart business as well as a compelling argument for concepts like thin clients (Sun Ray) and more efficient datacenters.

Conclusions? None yet. This is a company in transition. That said, I’ve come away thinking that its lean years have left it as well prepared as anyone for the coming economic uncertainty.

Windows Server 2008 is done, embraces PHP

Microsoft says that Windows Server 2008 has been released to manufacturing.

Organizations will be naturally cautious about upgrading their servers. Nevertheless, I suspect that Server 2008 will get an easier ride than Windows Vista. IIS 7.0 is a major upgrade for Microsoft’s web server. Built-in Hyper-V virtualization lets you run multiple operating systems on a single server, Linux included. Server Core is a minimalist install that comes close to answering those critics who have always said, “Why do I need a GUI on a server?”

Here’s the most interesting part of the announcement, especially bearing in mind the Yahoo bid:

With Windows Server 2008, Microsoft is also embracing PHP hosting on Windows via the FastCGI module for IIS 7.0. PHP is a popular open-source scripting language used to build dynamic web applications. This allows IT Professionals to host PHP and ASP.net applications side by side. As a result, the PHP community will be able to take advantage of the increased reliability of PHP on Windows and simplified administration available on the Windows platform.

Quick way to deploy all those PHP applications, eh?

I’m surprised at Microsoft’s choice of language here. Microsoft is not really embracing PHP, as far as I am aware. Its web development platform remains ASP.NET. This is about compatibility and easing migration. Note that Mainsoft can do a fair job of getting your ASP.NET application running on Java, and there is also Mono, so portability between the Microsoft and *nix platforms is improving.

PS I first blogged about IIS 7.0 in July 2005. Nobody can accuse Microsoft of rushing this one.